我是Java的正则表达式的新手,并且无法让它正常工作。以下代码表示找不到匹配项。
pattern = Pattern.compile("EN\\( [ -][0-5]\\)= \\d+.?\\d*E[+-]\\d{2}");
match = pattern.matcher("EN( 0)= 0.000000E+00");
String result = match.group();
据我所知,这应该有效。我一直在使用Oracle java tutorial on regular expressions来指导我。任何和所有的帮助表示赞赏。
答案 0 :(得分:2)
几乎就在那里,你只需要:
Matcher match = pattern.matcher("EN( 0)= 0.000000E+00");
match.find(); // <-- missing
String result = match.group();
答案 1 :(得分:1)
-
中的{p> [ -]
是特殊字符,因此您必须使用[ \\-]
Pattern pattern = Pattern.compile("EN\\( [ \\-][0-5]\\)= \\d+.?\\d*E[+\\-]\\d{2}");
Matcher match = pattern.matcher("EN( 0)= 0.000000E+00");
if (match.find())
System.out.println(match.group());