文章目录

php正则表达式去掉特定字符串

前面我们分享了在php中,如何使用正则表达式去掉超链接的文章。

今天有小伙伴问小编。

我网站的评论里面,每天都有人发小广告,发超链接。

但是有些我又不想删除,比如说发的内容里面包含http://www.baidu.com,我只想留下baidu这个词,该如何写正则表达式呢?

我们可以这样写

$str=preg_replace("(<a [^>]*>|</a>|http://|https://|www.|.com|.cn|.com.cn|.net|.org|.cc)","",$str);

这段正则表达式,可以删除超链接,也可以将http://或www.或.com这些字符去掉。

但是还不完美,因为有些人可能会将“www”改成大写的“WWW”,亦或是写成“wWw”之类就无法清楚了。

这是我们可以改成这样的。

$str=preg_replace("(<a [^>]*>|</a>|http://|https://|www.|.com|.cn|.com.cn|.net|.org|.cc)","",strtolower($str));

将字符串转换成小写,就解决了。

但是如果,有些写成全角状态下的,比如“baidu.COM”小编也没办法了,除非你一个一个的去匹配。

本文网址:http://www.santii.com/article/65.html


数据更新时间:2018-11-16