在Java中验证这种字符串的正则表达式是什么?
我有这样的字符串('123','12345678'),我会通过抛出一个正则表达式来验证它。 我已经编写了这段代码,但我不知道舒尔是否能正常工作在Java中验证这种字符串的正则表达式是什么?,java,regex,validation,expression,matcher,Java,Regex,Validation,Expression,Matcher,我有这样的字符串('123','12345678'),我会通过抛出一个正则表达式来验证它。 我已经编写了这段代码,但我不知道舒尔是否能正常工作 String field = "('123','12345678')"; String regex = "^('\\d{3}','\\d{8}')$"; public void valideField(String field, String regex){ { if(!field.matches(regex)){ System.
String field = "('123','12345678')";
String regex = "^('\\d{3}','\\d{8}')$";
public void valideField(String field, String regex){
{
if(!field.matches(regex)){
System.out.println("Not validated!");
}
}
正则表达式是否正确?您有什么建议或帮助吗?您需要转义括号(使用反斜杠),因为它们表示正则表达式中的捕获组:
String regex = "^\\('\\d{3}','\\d{8}'\\)$";
您还必须使用
\\'
和\\\(
正确的正则表达式应该是:
String regex = "\\(\\'\\d{3}\\',\\'\\d{8}\\'\\)";
现在还不清楚你在问什么这可能会有帮助?所以你想检查字符串是否是“
”(“
这里是三位数”,“
这里是八位数”)
”?你不确定它是否有效吗?你不能…运行它,并找出答案吗?我想检查代码中的字符串是否符合这样的模式('3位数字','8位数字')。我想代码很清楚为什么要转义单引号?在JAVA中没有必要转义单引号。下面是