У меня есть строка, которую я загружаю по всему моему приложению, и она изменяется от чисел к буквам и тому подобное. У меня есть простой оператор if
, чтобы увидеть, содержит ли он буквы или цифры, но что-то работает неправильно. Вот фрагмент.
String text = "abc";
String number;
if (text.contains("[a-zA-Z]+") == false && text.length() > 2) {
number = text;
}
Хотя переменная text
содержит буквы, условие возвращается как true
. Значение параметра &&
должно быть равнозначно, поскольку оба условия должны быть true
для обработки number = text;
==============================
Решение:
Я смог решить это, используя следующий код, предоставленный комментарием по этому вопросу. Все остальные сообщения также действительны!
То, что я использовал, работало с первого комментария. Хотя все предоставленные примеры кода также являются действительными!
String text = "abc";
String number;
if (Pattern.matches("[a-zA-Z]+", text) == false && text.length() > 2) {
number = text;
}