/ / Java REGEX для тільки номерів - java, regex

Java REGEX для тільки номерів - java, regex

Я працюю над особистим користувальницьким текстовим редактором для mysql, і це моя проблема:

введіть опис зображення тут

Це те, що я зараз використовую, це будевиділіть будь-яке число, я хочу виключити числа, безпосередньо об'єднані в будь-яку букву [A-Za-z], будь-який інший символ не важливий, оскільки деякі з них є арифметичними символами.

private static final String NUMBER_PATTERN = "[0-9]+";

Відповіді:

2 для відповіді № 1

Використовуйте цей регулярний вираз, щоб вибрати лише номери, які не пов'язані з будь-яким текстом

bd+b
  • d+ дозволяє будь-яку кількість цифр
  • b на початку і в кінці визначає межу слова, так що вона не відповідає словам, як text12, 9gag, 4chan тощо

Демо: https://regex101.com/r/Fzm2PS/2

// Will match 12, 34,
// Will not match text12, string, 9gag

0 для відповіді № 2

Те, що ви хочете, - це конструкція "позитивного огляду" у вашому REGEX.

"[0-9]+(?<=[a-zA-Z])"

Матчі:

the 9 in "a9";
the 10 in "B10";
the 9 in "a9A"

Не збігаються:

the 9 in "9A";
the 10 in "+10"
the 10 in " 10"

-1 для відповіді № 3

Регулярні вирази Java для лише чисел

Рядок regex = ".[a-z]."// (після того, як кожна точка існує *), а потім використовувати variable.matches (regex), він поверне true, якщо він містить a-z і false, якщо він містить лише числа