2017-05-29 58 views
-3

我正在使用正则表达式从字符串中获取单词,它在字母数字的情况下工作正常,但如果使用算术运算符则返回错误答案。正则表达式在所有情况下都不能正常工作

Matcher oMatcher; 
Pattern oPattern; 


String key = "a++"; 
oPattern = Pattern.compile("\\b" + key + "\\b"); 
oMatcher = oPattern.matcher("max winzer® build-a-chair cocktailsessel »luisa« in runder form, zum selbstgestalten"); 
if (oMatcher.find()) { 
    System.out.println("True"); 
} 
+2

什么是你想完全匹配?一个模式中的“++”看起来不正确,但是这些加号没有逃脱。 –

+0

a ++是一些东西的代码。 –

回答

3

你要逃避key任何潜在的正则表达式特殊字符Pattern.quote

oPattern = Pattern.compile("\\b" + Pattern.quote(key) + "\\b"); 
            ^^^^^^^^^^^^^ 
+0

谢谢,我完全想要这个。 –

相关问题