我需要从文本中删除<a href
,除非href中的domain / url包含example.com
我找到了这个正则表达式,但它现在替换所有网址(.*?)
,任何想法如何制作它所以它取代所有hrefs 除了如果网址包含example.com
< / p>
preg_replace('/<a href=\"(.*?)\">(.*?)<\/a>/', "\\2", $_POST['desc']);
以下是替换应如何工作的示例
<a href="http://example.com/test">test1</a> ==> Should not be replaced (targeted)
<a href="http://google.com/test">test2</a> ==> test2
答案 0 :(得分:-1)
['"]https?:\/\/(?!example\.com)[^"']+['"]
该正则表达式将匹配域名为example.com
的所有网址
在这种情况下,我认为它可以封装在单引号或双引号之间,比如href="{url}"
或href='{url}'
。