我想要删除所有与此域vnexpress.net
相匹配的链接。href
属性。 这是一个链接例如:如何在php中使用正则表达式删除链接?
<a href="http://vnexpress.net/whatever">whatever</a>
这是我的代码:
$contents = preg_replace('/<a\s*href=\"*vnexpress*\"\s(.*)>(.*)<\/a>/', '', $data->content);
请帮帮我!非常感谢!。
我想要删除所有与此域vnexpress.net
相匹配的链接。href
属性。 这是一个链接例如:如何在php中使用正则表达式删除链接?
<a href="http://vnexpress.net/whatever">whatever</a>
这是我的代码:
$contents = preg_replace('/<a\s*href=\"*vnexpress*\"\s(.*)>(.*)<\/a>/', '', $data->content);
请帮帮我!非常感谢!。
您已经在这里要求提供正则表达式,但解析HTML不是正确的tool。
$doc = new DOMDocument;
$doc->loadHTML($html); // load the html
$xpath = new DOMXPath($doc);
$links = $xpath->query("//a[contains(@href, 'vnexpress.net')]");
foreach ($links as $link) {
$link->parentNode->removeChild($link);
}
echo $doc->saveHTML();
试试这个:
$re = "/<a[^>]+href=\"[^\"]*vnexpress.net[^>]+>(.*)<\\/a>/m";
$str = "<a id=\"\" href=\"http://vnexpress.net/whatever\">whatever <b>sss</b> </a>\n<a id=\"\" href=\"http://new.net/whatever\">whatever</a>\n";
$subst = "$1";
$result = preg_replace($re, $subst, $str);
什么正则表达式你有那么远,并给它什么样的错误? – Nerixel
'href =“\ K [^”] * \ bvnexpress \ .net [^“] *' –
@AvinashRaj我尝试使用您的代码,但它不起作用 –