有没有人发现 REGEX "\b"在 MYSQL 中不起作用?
我有一个很好的正则表达式,它使用正则表达式引擎匹配得很好
^(//)?w7\b
但是当我将它用作 MYSQL 查询的一部分时
WHERE ( e.department REGEXP '^(//)?w7\b' )
它不会匹配。如果我删除\b 组件,匹配效果很好,但它不符合我对\b 所需的准确性(基本上我只需要匹配整个单词 W7)
谢谢!
最佳答案
对于 MySQL 8.0.4 之前的 MySQL 版本,REGEXP
(MySQL 5.6 ref)文档表明词首/词尾标记是:
[[:<:]], [[:>:]]
These markers stand for word boundaries. They match the beginning and end of words, respectively.
试试:
WHERE ( e.department REGEXP '^(//)?w7[[:>:]]' )
After 8.0.4 , \b
用于字边界。
关于php - 有没有人发现 REGEX "\b"在 MYSQL 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6403104/