Java REGEX仅用于数字

时间:2017-05-04 14:38:42

标签: java regex

我在使用mysql的个人自定义文本编辑器,这是我的问题:

enter image description here

这是我目前使用的,它会突出显示任何数字,我想排除直接连接到任何字母[A-Za-z]的数字,任何其他符号都不重要,因为其中一些是aritmetic符号。

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

3 个答案:

答案 0 :(得分:2)

使用此正则表达式仅选择未连接到任何文本的数字

\b\d+\b
  • \d+允许任意数量的数字
  • \b在开头和结尾定义一个字边界,使其与text129gag4chan等字词不匹配

演示:https://regex101.com/r/Fzm2PS/2

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

答案 1 :(得分:0)

你想要的是一个积极的后视"在你的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"

答案 2 :(得分:-1)

仅限数字的Java正则表达式

String regex =&#34;。 [a-z]。&#34; //(在每个点之后有*)然后使用variable.matches(regex),如果它包含a-z则返回true,如果它只包含数字则返回false