正则表达式,接受整数和null

时间:2016-06-21 11:01:22

标签: regex

有人可以帮我编写接受整数值和null(字null或NULL)但不是小数和字符串的正则表达式。

我尝试了表达式:

/^([nN][uU][lL][lL])?|(-?\d+?)?$/     
/^(null|NULL)?|(-?\d+?)?$/

但是他们接受字符串以及数字和字符串的组合。

2 个答案:

答案 0 :(得分:0)

使用不区分大小写的标记i有时会使事情变得更容易。

请注意,捕获组包含两个OR条件 并且该组不是?的可选项。

/^(null|[-]?\d+)$/i

或没有i标志

/^(null|NULL|[-]?\d+)$/

答案 1 :(得分:0)

这是你想要的正则表达式: -

Pattern p = Pattern.compile("(?i)((null)*\\d*)*");
String s = "null123null";
System.out.println(s.matches(p.toString()));

输出