PHP 实现敏感词 / 停止词 过滤(附敏感词库)PHP实现了敏感词/停用词过滤(带敏感词库),过滤敏感单词和字符是网站,的一项基本功能,因此有必要设计一个好的、高效的过滤算法。在敏感词过滤算法中,必须减少计算量,而DFA算法中几乎没有计算量,只有状态转移。因此,需要DFA算法来更高效地过滤敏感词。

整理过滤函数代码如下:

/**

*注意:[多过滤词过滤字符中的敏感词]

*AuthorHeZe

*日期2021/1/614:48

*@param$list一维数组过滤词[‘小明’,’小红’,’大白’,’小白’,’小黑’,’我’,’你’];

*@param$string输入文本,就像小白喜欢小黑喜欢的大黄一样

*@returnstring过滤后的单词,如**喜欢*喜欢大黄

*/

functionDoFilterWords($list,$string,$symbol=’* ‘)

{

$ count=0;//非法字数

$敏感词=’ ‘;//非法词语

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

$pattern=’/’。内爆(‘ | ‘,$list)。/I ‘;//定义正则表达式

If (preg _ match _ all ($ pattern,$ string,$ matches)){//匹配结果

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

$ count=count($ patternList);

$敏感词=内爆(‘,’,$ patternList);//将敏感词数组转换为字符串

//合并匹配的数组并替换它们

$ replace array=array _ combine($ patternList,array_fill(0,count($patternList),$ symbol));

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

}

$log=’原句是[{ $ string }]br/’;

if($count==0){

$log。=’敏感词尚未匹配!’;

}else{

$log。=’匹配[{$count}]个敏感词:[{ $敏感词}]br/’。替换为:[{ $ StringAfter }]’;

}

返回$ log

}使用方法

//筛选同义词库

$list=[‘小明’,’小红’,’大白’,’小白’,’小黑’,’我’,’你’];

//输入文本

$string=’喜欢你小白喜欢小黑爱吃的大黄’;

//调用函数

$res=DoFilterWords($list,$string,’ *);

echo $ res

//输出结果

原句是[喜欢你小白喜欢小黑爱吃的大黄]

[3]敏感词搭配:[你,小白,小黑]

替换为:[喜欢**喜欢*爱大黄]

最后 附上敏感词、停止词 词库:https://gitee.com/zehe/stopwords

转载请注明出处~ ~ ~ ~ ~

敏感词库php数组,PHP 实现敏感词 / 停止词 过滤(附敏感词库),敏感类词语大全...相关推荐

  1. DFA算法:简易Java敏感词过滤(含源文件和上万敏感词列表)

    敏感词过滤说白了就是简单的字符串替换,Java本身已经提供了相关函数,但是一旦遇到长文本,或者敏感词数量庞大,效率下降就会非常明显.本文将介绍利用多叉树进行敏感词存储和过滤的方法. 多叉树 多叉树是一 ...

  2. python实现dfa过滤算法_DFA 算法实现敏感词过滤(python 实现)

    敏感词过滤的经典算法DFA ,看完相关资料后,自己实现了一下,同时做了评估实验 先上代码 #!/usr/bin/python2.6 # -*- coding: utf-8 -*- import tim ...

  3. 敏感词过滤的php代码,PHP敏感词过滤

    /** * 禁词过滤 * 执行效率:每篇用时0.05秒 * @author liuxu * */ class Logic_BlackWord { const APP_FORUM = 1; const ...

  4. python轻松过滤处理脏话与特殊敏感词汇的方法

    导读 我们开发的系统往往都离不开信息的处理,这些信息有的内容非常敏感,就需要过滤掉不容许出现 python的其中一个强大之处就是它可以方便的集成很多的非标准库,今天在GitHub上溜达又发现了一个脏话 ...

  5. python中的记录指针_使用Python向C语言的链接库传递数组、结构体、指针类型的数据...

    使用python向C语言的链接库传递数组.结构体.指针类型的数据 由于最近的项目频繁使用python调用同事的C语言代码,在调用过程中踩了很多坑,一点一点写出来供大家参考,我们仍然是使用ctypes来 ...

  6. python结构体数组传出接收c动态库_使用Python向C语言的链接库传递数组、结构体、指针类型的数据...

    使用python向C语言的链接库传递数组.结构体.指针类型的数据 由于最近的项目频繁使用python调用同事的C语言代码,在调用过程中踩了很多坑,一点一点写出来供大家参考,我们仍然是使用ctypes来 ...

  7. 438. 找到字符串中所有字母异位词【异位词-哈希数组】

    438. 找到字符串中所有字母异位词 给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引.不考虑答案输出的顺序. 异位词 指由相同字母重排列形成的字符串(包括 ...

  8. linux编译动态库未定义,GCC链接库的一个坑:动态库存在却提示未定义动态库的函数...

    背景 在GCC中已经指定链接库,然而编译时却提示动态库函数未定义! 测试出现的错误提示如下: [GMPY@13:48 tmp]$gcc -o test -L. -lmylib test.c /tmp/ ...

  9. python词云图制作壮观天体照_【Python成长之路】词云图制作

    [写在前面] 以前看到过一些大神制作的词云图 ,觉得效果很有意思.如果有朋友不了解词云图的效果,可以看下面的几张图(图片都是网上找到的): 网上找了找相关的软件,有些软件制作 还要付费.结果前几天在大 ...

  10. python的科学计算库有哪些_《用Python进行科学计算》——SciPy数值计算库

    SciPy函数库在NumPy库的基础上增加了众多的数学.科学以及工程计算中常用的库函数.例如线性代数.常微分方程数值求解.信号处理.图像处理.稀疏矩阵等. 最小二乘拟合 假设有一组实验数据(x[i], ...

最新文章

  1. mysql M/S配置小记
  2. 1.1 基本图像导入、处理和导出
  3. 西藏打造云计算数据中心 2020年中国数据中心规模约2000亿元
  4. (4) hibernate增删查改+批量操作+类似Mybatis动态sql
  5. 选修课计算机网络技术,2020智慧职教网络选修课计算机网络技术基础答案完整满分章节测试答案...
  6. python大学随机点名名_python用tkinter实现一个简易能进行随机点名的界面
  7. CW3 Clarifications
  8. 词法分析与语法分析简介
  9. bm3d算法matlab,BM3D算法实现图像降噪.doc
  10. netbeans php 安装教程,Netbeans下载安装教程教程
  11. 使用clusterProfiler进行KEGG富集分析
  12. Html+Css实现鼠标经过图片放大
  13. Java程序员必读精选书籍分享,强烈推荐
  14. Unity 涂涂乐(不使用shader)
  15. Linux系统中read的用法,Linux系统中read的使用技巧
  16. win10用html文件做壁纸,利用win10自带工具制作动态壁纸的简单方法
  17. Python做一个简单的名片管理系统
  18. PyQt5高级界面控件之QDockWidget
  19. 软件外包项目管理7 - 项目监控
  20. MySQL导入excel数据后日期格式不对

热门文章

  1. 前端代码——前端代码规范(含html、css、javascript、vue等)
  2. HDL4SE:软件工程师学习Verilog语言(四)
  3. 微信小程序反编译工具及方法
  4. 电视盒子 android tv6,【亲测】S905L/S905L-B安卓TV6.0通刷固件
  5. 10:Java人脸识别认证-Java API 实战
  6. iOS开发中使用宏定义提高开发效率
  7. 将多个Excel文件合并为一个(实测有效)
  8. Archlinux 在启动时出现Error file vmlinuz not found解决方法
  9. c语言-实现九九乘法表
  10. SQL server 數據庫 從SQL2000搬移到SQL2016