PHP的一个过滤敏感词或脏话的方法
主要使用了 int substr_count ( string haystack, string needle [, int offset [, int length]] ) 这个方法,这个方法遍历待测的字符串$str中有没有$allergicWord数组中所包含的敏感词:
- $allergicWord = array('脏话','骂人话');
- $str = '这句话里包含了脏话和骂人话';
- for ($i=0;$i<count($allergicWord);$i++){
- $content = substr_count($str, $allergicWord[$i]);
- if($content>0){
- $info = $content;
- break;
- }
- }
- if($info>0){
- //有违法字符
- return TRUE;
- }else{
- //没有违法字符
- return FALSE;
- }
如果需要将出现的敏感词替换,比如替换###或者***可以结合substr_replace ( mixed string, string replacement, int start [, int length] )方法使用
=================================================================
- 关键字的存放形式为txt,txt文件中以这样形式存放:|赌博机|卖血|出售肾|出售器官|眼角膜
- <?php
- function Filter_word( $str, $fileName )
- {
- if ( !($words = file_get_contents( $fileName )) ){
- die('file read error!');
- }
- $str = strtolower($str);
- //var_dump($words);
- $word = preg_replace("/[1,2,3]\r\n|\r\n/i", '', $words);
- //$wor = substr($word,0,-1);
- //$w = preg_replace("|/|i", '\/', $word);
- //echo "<pre>";
- //var_dump($w);
- //$words = "赌博机|卖血|出售肾|出售器官|眼角膜";
- $matched = preg_replace('/'.$word.'/i', '***', $string);
- return $matched;
- }
- $content = "<a href='#'>我要卖血fsdf卖血d 赌博机wo眼口交膜</a>";
- if ($result = Filter_word($content, './words.txt') ){
- echo $result;
- echo "替换成功 ";
- }else{
- echo "替换失败! ";
- }
- ?>
PHP的一个过滤敏感词或脏话的方法相关推荐
- php敏感字符串过滤_PHP的一个过滤敏感词或脏话的方法
PHP的一个过滤敏感词或脏话的方法 主要使用了 int substr_count ( string haystack, string needle [, int offset [, int leng ...
- 使用过滤器做一个过滤敏感词实例
做的时候是 想通过Filter的doFilter()方法逻辑处理,简单的实现把字符串中0-9的数字替换为" * ". public void doFilter(ServletReq ...
- python过滤敏感词汇_利用Python正则表达式过滤敏感词的方法
利用Python正则表达式过滤敏感词的方法 问题描述:很多网站会对用户发帖内容进行一定的检查,并自动把敏感词修改为特定的字符. 技术要点: 1)Python正则表达式模块re的sub()函数: 2)在 ...
- flex java 全局拦截_flex + java 过滤敏感词
过滤敏感词这个相对比较容易做到,网上也很多方法,看得比较多的一个方法就是:把所有的敏感词写入到一个properties文件中,程序启动时拼成一个正则表达式.这个也只是比较基础的敏感词过滤器,比较强大的 ...
- python过滤敏感词记录
简述: 关于敏感词过滤可以看成是一种文本反垃圾算法,例如 题目:敏感词文本文件 filtered_words.txt,当用户输入敏感词语,则用 星号 * 替换,例如当用户输入「北京是个好城市」,则变成 ...
- ios 弹幕过滤敏感词方案对比和性能测试
在看视频的过程中, 很多用户会发弹幕, 当前用户可以设置过滤敏感词和敏感用户, 设置后, 命中敏感词和敏感用户的弹幕就不会显示. 敏感词和敏感用户的设置上限为各100. 由客户端进行过滤, 不区分大 ...
- C#过滤敏感词DFA算法
今天游戏正好用到需要过滤敏感词将出现的敏感词替换成*,在网上找了许久找了一片可用的java版本的DFA算法,最后费了一番功夫将其思路用C#实现,里面的注释甚至都没改动的,这里直接上代码,这里不借助任何 ...
- 用js模拟一个简单敏感词过滤器
1.用js模拟一个简单敏感词过滤器 (用户输入的内容中的敏感词替换为*) 例:"今天有个傻子在旁边大喊大叫,影响了我的操作.", 过滤后:"今天有个在旁边大喊大叫,影响了 ...
- 第三章:过滤敏感词、帖子管理
过滤敏感词 根节点没有字符,到最末节点拼起来才是敏感字符,做一个标记在最后. 过滤符号 /* * 过滤敏感词 * 参数:待过滤的文本, 返回过滤后的文本 * */ public String filt ...
最新文章
- 批量更新zabbix中的主机名
- android 用dx.bat 转换class 为dex
- 命犯编程!因为名字特殊,她被苹果封了 6 个月
- IDEA设置自定义代码模板
- Struts 2基础入门
- 前端学习(3253):vs code中组件化编码
- 使用JDBC-ODBC桥接方式访问Access数据库(实例)
- MinIO客户端快速入门指南
- 超详细尚硅谷mysql 分组函数
- The binding handle is invalid 绑定句柄无效
- Java中的恒等于号怎么输入_Java---java基础语法03---运算符
- 读书笔记-穿越计算机的迷雾
- ubuntu最好用的划词翻译词典:有道词典和GoldenDict
- 阿里面试题 ——输入一个字符串,输出所有的排列
- python 更换windows壁纸(简单)
- python怎么导出_Python 数据分析(三):数据的导入导出
- 基于文心大模型的剧本杀海报生成器(武侠篇)
- 英文中常见连读规律总结
- matplotlib 点线动画
- 模电——电路中电源地、模拟地、信号地的区别与联系