Java 亵渎词正则表达式匹配不起作用时+不正确匹配
模式报价示例\Qshi+\E模式报价示例\Qshi+\E 假的 预期:正确 我正在使用java 7。单词边界转义是\\b而不是\bJava 亵渎词正则表达式匹配不起作用时+不正确匹配,java,regex,word-boundary,Java,Regex,Word Boundary,模式报价示例\Qshi+\E模式报价示例\Qshi+\E 假的 预期:正确 我正在使用java 7。单词边界转义是\\b而不是\b 模式引用示例\Qshi+\E模式引用示例\b\Qshi+\E\b false-->不工作+字符是一个特殊字符。您需要使用反斜杠对其进行转义:\+无法转义,这会引发编译时错误@AutomatedChaos-无效的转义序列有效的转义序列是\b\t\n\f\r\\'\\类似的序列 String stre = "da shi+ jia"; profaneWord= "shi
模式引用示例\Qshi+\E模式引用示例\b\Qshi+\E\b false-->不工作+字符是一个特殊字符。您需要使用反斜杠对其进行转义:\+无法转义,这会引发编译时错误@AutomatedChaos-无效的转义序列有效的转义序列是\b\t\n\f\r\\'\\类似的序列
String stre = "da shi+ jia";
profaneWord= "shi+";
boolean flag = isContain(stre, profaneWord);
private static boolean isContain(String source, String subItem) {
String pattern = subItem;
String pat = Pattern.quote(pattern);
System.out.println("pattern quote example " + pat);
Pattern p = Pattern.compile("\b"+pat+"\b");
System.out.println("pattern quote example " + p.toString());
Matcher m = p.matcher(source);
return m.find();
}
Pattern.compile("\\b"+pat+"\\b");