php 替换一个字符前的字符_php实现特殊字符(违禁词)的替换操作

a85787440a1b90f9475257acd3300c5c.png

php中文网最新课程

每日17点准时技术干货分享

f2b819816483ed226c338f01ecfafad6.png

0317b6488f1328396c55f856fe2d6235.gif

前言:

作为一名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文件中<?php //自定义替换函数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 '替换失败!';}?>

72b029f24cfe46a5f2edd5b1a92afcba.png

-END-

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值