我有以下正则表达式,我正在使用Pattern类进行编译。
\bIntegrated\s+Health\s+System\s+\(IHS\)\b
为什么这不符合这个字符串?
“测试模式案例综合健康系统(IHS)。”
如果我尝试\ bpattern \ b,它似乎有用,但对于上面的短语它没有。我在模式转义中有括号,所以不确定为什么它不起作用。如果我删除模式的括号部分,它确实匹配,但我想匹配整个事物。
答案 0 :(得分:1)
1)逃避parens,否则他们捕获并分组元字符,而不是字面括号\( \)
2)删除最后的\ b你不能在文字后使用单词边界),因为)不被视为单词的一部分。
\bIntegrated\s+Health\s+System\s+\(IHS\)\W
答案 1 :(得分:0)
你有(IHS) - 一个小组 - 你想要\(IHS \)作为字面括号。
答案 2 :(得分:0)
您需要转义括号
\bIntegrated\s+Health\s+System\s+\(IHS\)\b
括号分隔捕获组。要匹配一组文字括号,您可以像\( \)