Как уже упоминалось, рассматриваемый язык не является регулярным и не может быть обнаружен с помощью регулярного выражения.
Я дам вам еще один способ подсчета количества цифр и количества не цифр в строке с помощью регулярных выражений !!
Вы можете использовать метод String.replaceAll
, чтобы удалить все нецифровые символы во входной строке. Длина результирующей строки будет количеством цифр на входе.
Точно так же вы можете удалить все цифры во входной строке, а длина результирующей строки будет числом не цифр во входной строке.
public static boolean test(String str) {
int numDigits = str.replaceAll("\\D","").length();
int numNonDigits = str.replaceAll("\\d","").length();
return numDigits > numNonDigits;
}
Ideone Link