2013-07-04 217 views

回答

3
line.matches("@@[email protected]@") 

意味着整个线相匹配。想象一下,像这样

line.matches("^@@[email protected]@$") 

而且replaceAll不会抛出异常,如果没有匹配,那么你可以简单地拖放你的检查:

String line = "\t<title>@@[email protected]@</title>"; 
line = line.replaceAll("@@[email protected]@", "Title"); 
+0

如何防止它与全线比较模式? –

+1

@ user88731使用'java.util.regex'包。 – johnchen902

+0

thanx它解决了我的问题:) –

1

在Java中,只有String#matches返回true,如果字符串与正则表达式匹配。在你的情况下,你需要这个正则表达式:.*@@[email protected]@.*

我觉得String#contains是你的情况更好,因为你是不是真的想匹配一个正则表达式,但一子。