我试图在我的数据库中搜索符合字符串的wordpress帖子。
不过,我希望得到的行中有匹配的词作为纯文本,但不是那些有词嵌入链接的行。
例如,如果一篇文章在数据库的“wp_posts”表中有以下文本:

'This is a Test page: <a href="http://localhost/test-page">About Test</a>'.

我在自定义查询中搜索“about”一词:
SELECT * FROM `wp_posts` WHERE post_content like '%about%';

所以我得到了上面的职位。
有没有方法可以忽略链接中嵌入搜索字符串的帖子,并获取其他将搜索字符串作为普通字符串一部分的帖子?
我尝试了regex查询,但没有成功:
SELECT * FROM `wp_posts` WHERE post_content REGEXP '[[:<:]]about[[:>:]]';

最佳答案

May be this:

SELECT * FROM `wp_posts` WHERE post_content LIKE '%about%' AND post_content NOT REGEXP '>[^>]*about[^<]*<';

关于mysql - 表中的mysql搜索字符串忽略链接,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25260499/

10-13 05:51