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