PCRE全字匹配(仅允许使用空格作为分隔符)
我要将字符串作为一个完整的单词匹配"~$search~i"
,它匹配‘35’到‘35-40’。我只想让空格作为单词之间的分隔符。
测试用例: 在以下情况下匹配35:
- 35-40=>FALSE
- 3-5=>FALSE
- 335=>FALSE
- 350=>FALSE
- 35=>TRUE
感谢您的答复
解决方案
您可以使用look-around assertions而不是词边界断言:
~(?<!S)$search(?!S)~i
此处(?<!S)
断言前面没有非空白字符(S
),(?!S)
断言$search
后面没有非空格字符。
相关文章