我正在寻找一个大文本中的短语“在成功中(并从失败中吸取教训!) ”。由于有括号我使用了引号(...)来允许它,但我也想使用单词边界“\ b”所以如果在这样的文本中找到这个短语将被忽略“亲属成功(并从他们的失败!)”。
这是我的代码:
String phrase = Pattern.quote( "in successes (and learn from their failures!)" );
Pattern myPattern = Pattern.compile( "\\b" + phrase + "\\b" ); // Use word boundary(\b) = No letters after it.
Matcher myMatcher = myPattern.matcher( bigText );
myMatcher.find(); // Returns false.
如前所述,由于使用“\b”,此代码将返回 false。如果我省略了“\b”,匹配器将返回 true。有没有办法在使用 2 个条件时解决这个问题: quote(...) + "\b" ?