正则表达式删除垃圾链接

时间:2017-05-07 15:36:33

标签: regex wordpress

我的WordPress最近被黑了,现在我正在尝试清理多年来的XML数据库备份中的所有制药链接。

似乎RegEx是这样做的,但我不是专家。我无法让表达起作用。我试图编写一个表达式来搜索包含单词viagra或cialis的任何链接,然后用任何内容替换整个标记。

这是我到目前为止所得到的......

(<a href=".*(viagra|cialias).*>)(.*)(<.a>)

它有效 - 但是当它们靠近时也能获得良好的链接。例如,它将选择所有这些......

<a href="http://buy-viagra.net/" style="text-decoration:none;color:#676c6c">gastritis</a>  check out <a href="http://www.good.is/post/junkan-fixies-from-tokyo-to-osaka/">Junkan</a>, a short version of <a href="http://www.tokyo2osaka.com/">Tokyo to Osaka</a> made especially for <a href="http://www.good.is/">Good</a>

我需要在gastritis </a>

之后停止

我目前只是使用http://regexr.com/来运行表达式,然后我计划复制并粘贴来自&#39; replace&#39;选项卡回到XML文件。

(如果你是RegEx高手,那么使用大写和小写的表达式搜索伟哥和Cialis会很棒!)

1 个答案:

答案 0 :(得分:2)

这是你在找什么?

<a\s*href\s*=\s*".*(viagra|cialis)[^>]*>[^<]*<\s*\/\s*a\s*>

带有标记i

不区分大小写。

https://regex101.com/r/cTKHa3/2