PHP实现的敏感词过滤方法,以下是一份过滤敏感词的编码。有需要可以参考参考。

/**

* @todo 敏感词过滤,返回结果

* @param array $list 定义敏感词一维数组

* @param string $string 要过滤的内容

* @return string $log 处理结果

*/

function sensitive($list, $string){

$count = 0; //违规词的个数

$sensitiveWord = ''; //违规词

$stringAfter = $string; //替换后的内容

$pattern = "/".implode("|",$list)."/i"; //定义正则表达式

if(preg_match_all($pattern, $string, $matches)){ //匹配到了结果

$patternList = $matches[0]; //匹配到的数组

$count = count($patternList);

$sensitiveWord = implode(',', $patternList); //敏感词数组转字符串

$replaceArray = array_combine($patternList,array_fill(0,count($patternList),'*')); //把匹配到的数组进行合并,替换使用

$stringAfter = strtr($string, $replaceArray); //结果替换

}

$log = "原句为 [ {$string} ]
";

if($count==0){

$log .= "暂未匹配到敏感词!";

}else{

$log .= "匹配到 [ {$count} ]个敏感词:[ {$sensitiveWord} ]
".

"替换后为:[ {$stringAfter} ]";

}

return $log;

}

调用方法

function testAction(){

$string = 'likeyou小白喜欢小黑爱着的大黄'; //要过滤的内容

$list = ['小明', '小红', '大白', '小白', '小黑', 'me', 'you']; //定义敏感词数组

$result = $this->sensitive($list, $string);

echo ($result);

die;

//打印结果:

/*

原句为 [ likeyou小白喜欢小黑爱着的大黄 ]

匹配到 [ 3 ]个敏感词:[ you,小白,小黑 ]

替换后为:[ like**喜欢*爱着的大黄 ]

*/

}

PHP实现的敏感词过滤方法,你们有好的编码和好的实现方法吗,可以发出来一起交流一下。

php敏感字符串过滤_PHP实现的敏感词过滤方法相关推荐

  1. php敏感字符串过滤_PHP实现的敏感词过滤方法示例

    本文实例讲述了PHP实现的敏感词过滤方法.分享给大家供大家参考,具体如下: 1.敏感词过滤方法 /** * @todo 敏感词过滤,返回结果 * @param array $list 定义敏感词一维数 ...

  2. php mysql防注入字符串过滤_php中防止SQL注入的方法

    最好对magic_quotes_gpc已经开放的情况下,还是对$_POST['lastname']进行检查一下. 再说下mysql_real_escape_string和mysql_escape_st ...

  3. php敏感字符串过滤_PHP实现敏感词过滤

    正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式通常被用来检索.替换那些符合某个模式(规则) ...

  4. 字符串匹配算法 -- AC自动机 基于Trie树的高效的敏感词过滤算法

    文章目录 1. 算法背景 2. AC自动机实现原理 2.1 构建失败指针 2.2 依赖失败指针过滤敏感词 3. 复杂度及完整代码 1. 算法背景 之前介绍过单模式串匹配的高效算法:BM和KMP 以及 ...

  5. php返回当前字符串把所有敏感词变红,PHP 实现敏感词 / 停止词 过滤(附敏感词库)...

    敏感词.文字过滤是一个网站必不可少的功能,如何设计一个好的.高效的过滤算法是非常有必要的.在实现敏感词过滤的算法中,我们必须要减少运算,而 DFA 在 DFA 算法中几乎没有什么计算,有的只是状态的转 ...

  6. mysql 敏感词_PHP实现的敏感词过滤方法示例

    本文实例讲述了PHP实现的敏感词过滤方法.分享给大家供大家参考,具体如下: 1.敏感词过滤方法 /** * @todo 敏感词过滤,返回结果 * @param array $list 定义敏感词一维数 ...

  7. 敏感词过滤,PHP实现的Trie树

    [转载]敏感词过滤,PHP实现的Trie树 原文地址:http://blog.11034.org/2012-07/trie_in_php.html 项目需求,要做敏感词过滤,对于敏感词本身就是一个CR ...

  8. Java实现敏感词过滤 - IKAnalyzer中文分词工具

    IKAnalyzer 是一个开源的,基于java语言开发的轻量级的中文分词工具包. 官网: https://code.google.com/archive/p/ik-analyzer/ 本用例借助 I ...

  9. python中哪些词是敏感字词_python实现敏感词过滤的几种方法

    1.replace过滤 最简单也是最直接的就是直接循环敏感词,然后使用replace过滤关键词,文章和敏感词少的时候还可以,多的时候效率就真的很一般了. 2.使用正则过滤 有两个技术要点, 1.使用P ...

最新文章

  1. HTTP协议与TCP/IP协议的关系
  2. 学习Redis持久化
  3. “懒”的妙用——浅析图片懒加载技术
  4. JavaScript--DOM操作表格及样式(21)
  5. 使用cardme读写VCard文件,实现批量导入导出电话簿
  6. 安装Hbase(分布式)遇到一些问题及解决方法
  7. 苹果员工出逃现象严重:人才挽留成大难题
  8. Pango Reference Manual 【文本和字体处理函数库】
  9. React列表中实现文案多行收起展开的功能
  10. 海南可以禁燃油辆,东北不可以,因为冬天温度
  11. 关于wineQQ8.9.19983deepin23版本提升不能在使用请升级,Linux偷懒升级方法
  12. 192.168.8.1手机登陆_192.168.8.1手机登陆设置教程
  13. SQLServer中统计年,季,月,周,日平均值
  14. java囧囧西游之大闹天宫下载_最新囧囧西游之大闹天宫榜单下载_九游
  15. 计算机教学说课稿,计算机教学说课稿
  16. 【Leetcode】780. Reaching Points
  17. 封装获取非行内样式函数
  18. 自建服务器同步软件,黑群晖自建anki服务器电脑anki软件设置同步
  19. 技术人如何才能不焦虑
  20. python练习-句子逆序1

热门文章

  1. 记 dotamax 面试第一题
  2. 拥有这五件冰箱好物,夏日幸福爆棚
  3. chatgpt赋能python:Python中开区间和闭区间的介绍
  4. CSDN 显示分类专栏数量达到上限
  5. matlab油气田渗流,基于有限差分的油水兩相渗流方程求解油藏数值模拟毕业设计稿.doc...
  6. 使用C语言和DX库编写东方风格的STG射击游戏--------前言
  7. root华为u8860
  8. Leetcode-跳跃游戏I和II(动态规划)
  9. 二层交换、路由和三层交换
  10. Termux手机终端-逗你玩儿