【发布时间】:2016-07-05 10:56:27
【问题描述】:
我正在尝试查找与单词匹配但不以特定字符开头/结尾的正则表达式。
示例: 搜索词是迷你的
应该匹配:
mini
mini abc
mini-abc (- could be anything else but not [a-zA-Z0-9])
abc mini
abc-mini (- could be anything else but [a-zA-Z0-9])
abc mini abc
abcminiabc-mini (- could be anything else but not [a-zA-Z0-9])
mini-abcminiabc (- could be anything else but not [a-zA-Z0-9])
miniabc-mini (- could be anything else but not [a-zA-Z0-9])
mini-miniabc (- could be anything else but not [a-zA-Z0-9])
abcmin-mini (- could be anything else but not [a-zA-Z0-9])
mini-abcmini (- could be anything else but not [a-zA-Z0-9])
但不是:
miniabc
abcmini
abcminiabc
miniabc abc
abc abcmini
abcminiabc abc
abc abcminiabc
我尝试过这样的事情:
^(.*)([^a-zA-Z0-9]{0,1})MINI([^a-zA-Z0-9]{0,1})(.*)$
但这似乎不起作用,因为这也匹配 'miniabc'、'abcmini'、'abcminiabc',这不是我想要的。
(语言是 PHP,以防它在 MySQL 中是不可能的。)
【问题讨论】: