php特殊符号替换,php实现特殊字符的替换操作

前言:作为一名phper,对于字符串的操作是必须要掌握的,因此,我们就会接触到如何替换或者屏蔽字符串中的敏感词问题,接下来,就为大家介绍一下替换的方法。文章仅供参考,谢谢!

实例:

第一步:在字符串中搜索有无敏感词int substr_count(string haystack,string needle)

substr_count() 函数检索子串出现的次数,参数haystack是指定的字符串,参数needle为指定的字符。//定义敏感词数组

$array = array('骂人','肮脏','污秽');

//定义包含敏感词的字符串

$mgstr = '这是包含骂人肮脏污秽的话';

//利用循环判断字符串是否包含敏感词

for($i = 0; $i <= count($array); $i++) {

$count = substr_count($mgstr, $array);

if($count > 0) {

$info = $count;

break;

}

}

if($info > 0) {

//有敏感字符

return true;

}else{

//无敏感字符

return false;

}

第二步:使用preg_replace()函数实现敏感词的替换

preg_replace()函数执行一个正则表达式的搜索和替换mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )//关键词存放在.txt文件中

//自定义替换函数

function Replace($str, $filenam){

if(!($words = file_get_contents($filename))) {

//将敏感词语文本取出

die('文件获取失败!');

}

//取出成功,将字符串改成小写

$string = strtolower($str);

$word = preg_replace('/[1,2,3]\r\n|\r\n/i','',$words);

//字符串中出现文本敏感词,用特殊符号替换

$match = preg_replace('/'.$word.'/i','***',$string);

return $match;

}

//定义包含敏感词的字符串

$content = '肮脏fsdf污秽d 骂人'

//判断是否替换成功

if($result = Replace($content, './words.txt')) {

echo $result;

echo '替换成功!';

}else {

echo '替换失败!';

}

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值