我想要正则表达式来精确匹配选择mysql查询的单词。如果我有来自数据库的以下字符串
string : my name is amit patel with surname amitnindroda
Run Code Online (Sandbox Code Playgroud)
现在我想匹配amit上面字符串中的整个单词,那么它应该找到确切的单词amit,并且不应该从 中找到匹配项amitnindroda。请建议mysql查询的正则表达式
您可以使用REGEXP Keyword和[[:<:]]和[[:>:]]单词边界标记:
SELECT *
FROM tablename
WHERE keywords REGEXP '[[:<:]]word[[:>:]]'
Run Code Online (Sandbox Code Playgroud)
例子:
输入
id name
1 my name is admin in userwindow
2 my name is user in adminWindow
Run Code Online (Sandbox Code Playgroud)
询问:
SELECT * FROM test WHERE test.name REGEXP '[[:<:]]admin[[:>:]]'
Run Code Online (Sandbox Code Playgroud)
输出:
id name
1 my name is admin in userwindow
Run Code Online (Sandbox Code Playgroud)
所以你可以看到上面的查询'admin'只是搜索单词。
| 归档时间: |
|
| 查看次数: |
5443 次 |
| 最近记录: |