在sql中转义正则表达式中的主题标签

时间:2012-04-25 19:19:44

标签: php sql hash

我正在使用sql查询在帖子表中搜索主题标签然后单词。例如。 #cats我正在使用regexp,因为它使我能够使用正则表达式在匹配#cats的字符串中查找但具有模式的内容。

问题是我认为#打破了查询。这是我的查询,

mysql_query("SELECT * FROM somewhere WHERE something regexp '[[:<:]]#cats[[:>:]]'");

我试过这个以逃避#

mysql_query("SELECT * FROM somewhere WHERE something regexp '[[:<:]]\\#\cats[[:>:]]'");

任何人都可以帮我逃避这个哈希,这让我很烦恼:(

1 个答案:

答案 0 :(得分:3)

问题是空格与#之间没有字边界。

请改为尝试:

WHERE something REGEXP '#cats[[:>:]]'