正则表达式模式匹配产生错误

时间:2013-01-07 14:53:49

标签: java regex

我已经执行了下面的代码,但结果却是错误的。我的模式是否正确?这有什么不对?如果我错了,请纠正我,因为我坚持这个。

String name = "] RESPONSE GET - 192.168.200.121 -";
string pat = "] RESPONSE (GET|GETNEXT|GETBULK|SET|TRAP) - ^192\\.168\\.200\\.121$ -";
Pattern p = Pattern.compile(pat);
Matcher m = p.matcher(name);
System.out.println(m.find());

1 个答案:

答案 0 :(得分:3)

这有效:

] RESPONSE (GET|GETNEXT|GETBULK|SET|TRAP) - 192\\.168\\.200\\.121 -

您的字符串中间有^$个字符。它们分别代表要匹配的字符串的开头和结尾。字符串的开头/结尾显然不能在字符串的中间;显然; - )