php批量删除超链接

作者: 淡蓝海域 分类: php 发布时间: 2013-04-22 05:00

有时候我们会遇到这种需求,清除掉一段html文本内容中的超链接,这时有什么好办法呢?下面就总结几种简单的方法清除html文本中的超链接。

最常见的写法可以如下:

$str=preg_replace("/<a[^>]*href=[^>]*>|<\/[^a]*a[^>]*>/i","",$content);

1、删除html文本内容中的超链接

ereg_replace('<a([^>]*)>([^<]*)</a>','<font color="red">\\2</font>',$content);

ereg_replace("<a [^>]*>|<\/a>","",$content);

2、清除包含指定关键词的超链接

$find="this string is my find";
$string='<font color="red">这段内容将要被替换掉</font>';//将超链接替换成的内容
echo ereg_replace('<a([^>]*)>([^<]*'.$find.'[^>]*)</a>','<font color="red">\\2</font>',$content);

下面同时分享几种获取html文本内容中的超链接的文本内容方法:

//方法一
preg_match_all('/<(a|a)[s]{0,1}[w=":()]*>[nrn]*(check user)[nrn]*</(a|a)>/i',$string,$matches);

//方法二
preg_match_all('/<a[dd]*>check user</a>/i',$string,$matches);
print_r($matches);

//方法三
preg_match_all('/<a[^>]*>[^<]*</a>/i',$string,$matches);
print_r($matches);

//方法四
preg_match_all('/<a.+?>check user</a>/is',$str,$arr);
print_r($arr);

//方法五
preg_match_all('/<a.+?>check user</a>/is',$str,$arr);
print_r($arr);

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论