我正试图在MySQL中将一个单词与REGEX中的其他单词匹配,但我无法做到正确。
例如,搜索单词foo
应匹配以下内容(不区分大小写):
foobar
barfoo
foofoo
football
foo-bar
foo_bar
并不匹配它们之间的空格,如:
foo bar
我在网上搜索并发现了一些REGEX,但它们与上述所有选项都不匹配。
这是我目前的模式:
REGEX '[[:<:]]'.$word.'(![:space:])[[:>:]]
答案 0 :(得分:0)
我假设您在foo
之前或之后允许任何非空格字符。
然后你可以使用
'^[^[:space:]]*'.$word.'[^[:space:]]*$'
转换为PCRE正则表达式,其中\S
表示非空格字符,\b
表示字边界:
^\S*foo\S*$
所以这匹配包含foo
但不包含任何空格的单词。