从域和所有可能的子域替换链接,正则表达式php

时间:2014-03-20 09:13:13

标签: php regex

我正在清理包含指向域和/或子域的链接的html输出,我所知道的是清除主域中的所有链接:

$content = preg_replace('#<a href="https?://domain.*?>.*?</a>#i', '', $content);

正如您可以看到here,但是,是否可以创建一个正则表达式来替换域及其所有子域中的所有链接?

类似的东西:

preg_replace('#<a href="https?://**anysubdomain**.domain.*?>.*?</a>#i', '', $content);

1 个答案:

答案 0 :(得分:1)

试试这个:

preg_replace('#<a href="https?://(?:.+\.)?domain.*?>.*?</a>#i', '', $content);

上面应该抓住:

<a href="https://domain.com">something</a>
<a href="http://domain.net">...</a>
<a href="http://www.domain.org">...</a>
<a href="http://m.domain.com">...</a>