【发布时间】:2011-06-22 20:17:15
【问题描述】:
这个要杀了我,我是一个正则表达式的菜鸟。 我正在尝试进行站点搜索并将输入的文本与标题列中的 数据库。 基本上我想用正则表达式完成的是 LIKE '%word1 word2 word3%' ,但有一些字符串变体。
例如:
SELECT * FROM table WHERE title REGEXP 'w[ao]rd'
工作得很好。它寻找单词和病房。但是当我想要多个单词时,它什么也不返回。
SELECT * FROM table WHERE title REGEXP 'w[ao]rd sec[or]nd th[io]rd'
我不想搜索单词或第二个或第三个,我想将它们全部放在标题中,就像大写的 LIKE 一样。
我在想也许可以分解用户输入的搜索字符串,然后在 foreach 中逐字执行正则表达式,但不知道如何将所有变体连接到一个查询中。
编辑: 我忘了提到我在 utf8_unicode_ci 整理表中搜索。 所以我真的在尝试进行 [cčć]orak 类型的搜索。
【问题讨论】: