我需要一个与MySQL匹配的正则表达式:
deki
F 212的3-4个字符。
例如,以下内容将匹配:
“我的名字是eik"
F 226
发布于 2012-02-23 21:04:59
MySQL的扩展正则表达式非常强大,请参见http://dev.mysql.com/doc/refman/5.6/en/regexp.html。你可以写:
[[:<:]]e[deki]{1,2}k[[:>:]](单词开头的边界加上e,加上[deki]的一两个字符,加上k,加上字尾的边界).
这假设您的单词被标点符号或空格或诸如此类的分隔,并且不要求您的字段包含多个单词。
(感谢Bohemian给出一个使用\b的答案。MySQL不支持\b的单词边界,但它让我想起了我最初的答案。)
发布于 2012-02-23 21:08:34
试试这个:
WHERE column RLIKE '[[:<:]]e[deki]{1,2}k[[:>:]]'编辑:
mysql不支持\b,而是分别使用[[:<:]]和[[:>:]]作为word的开始和结束。regex相应更新
https://stackoverflow.com/questions/9421217
复制相似问题