我研究了一些正则表达式,它应该接受“P1”和“P2”,但只接受这两个组合。 所以我在这个网站上进行了测试:http://www.regexr.com/ 这导致我
\b(P1)\b|\b(P2)\b
该网站刚刚获得正确的匹配。
显然在我的java代码中同样的方法不起作用:
if(commandParameter.matches("\b(P1)\b|\b(P2)\b")){
return false;
}
作为命令参数,我给出 P1 或 P2。它仍然没有返回 false。 你有什么想法吗?
最佳答案
请注意,匹配将进行完全匹配而不是部分匹配。
if(commandParameter.matches(".*\\bP[12]\\b.*")){
return false;
}
精确匹配。
if(commandParameter.matches("P[12]")){
return false;
}
关于java - 正则表达式在 java 代码中不起作用,但在测试站点上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31724623/