我是靠谱客的博主 沉默小白菜,这篇文章主要介绍PHP使用正则表达式清除超链接文本,现在分享给大家,希望可以做个参考。

可以用$str = preg_replace("/<a[^>]*href=[^>]*>|<\/[^a]*a[^>]*>/i","",$strhtml); 这段来实现需求,如果想要更多解决方法,可以参看以下的。
1、删除内容中的超链接

复制代码 代码如下:

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);

3、获取超链接文本内容

复制代码 代码如下:

//方法一
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);

我用了这句 $year = preg_replace("/<a[^>]*href=[^>]*>|<\/[^a]*a[^>]*>/i","",$yearstr);

最后

以上就是沉默小白菜最近收集整理的关于PHP使用正则表达式清除超链接文本的全部内容,更多相关PHP使用正则表达式清除超链接文本内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(98)

评论列表共有 0 条评论

立即
投稿
返回
顶部