我无法在 Java 上运行此正则表达式:
String regex = "/^{m:\"(.*)\",s:([0-9]{1,15}),r:([0-9]{1,15}),t:([0-9]{1,2})}$/";
String data = "{m:\"texttexttext\",s:1231,r:23123,t:1}";
Pattern p = Pattern.compile(regex_Write_clientToServer);
Matcher a = p.matcher(data);
这相同的正则表达式和正则表达式站点的测试器上的相同数据(如 http://gskinner.com/RegExr/ )工作正常!
最佳答案
两个问题:
- 在 java 中,(与 Perl 等不同)正则表达式不包含在
/
字符中 - 您必须转义您的
{
文字:
试试这个:
String regex = "^\\{m:\"(.*)\",s:([0-9]{1,15}),r:([0-9]{1,15}),t:([0-9]{1,2})\\}$";
关于java - 正则表达式 Java 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7937672/