我的任务是为不同字符串中的条目创建一个黑名单。我正在使用MySQL.
您可能知道 : 中的单词边界标记MySQL,
[[:<:]]它们[[:>:]]对应\b于默认的正则表达式。
当存在regexp special characters和word boundary marks在字符串中时出现问题。
但是这些字符被双反斜杠转义了!
只需运行此查询
SELECT
"test()" REGEXP "[[:<:]]test\\(\\)[[:>:]]",
"test()" REGEXP "test\\(\\)",
"test" REGEXP "[[:<:]]test[[:>:]]",
"test" REGEXP "test" ;
你会得到
0 | 1 | 1 | 1
而不是预期
1 | 1 | 1 | 1
有人可以解释一下如何解决这个问题吗?