实现JS脏话筛选替换的几种途径
一、逐个替换用replace
缺点:筛选的脏话集太少
1 var oSize = $(this).siblings('.flex-text-wrap').find('.comment-input').val(); 2 console.log(oSize); 3 //筛选网络暴力语言begin 4 var b= oSize.replace(/滚/g,'*'); 5 var c= b.replace(/sb/g,'*'); 6 var d= c.replace(/tmd/g,'*'); 7 /* 8 思路1:脏话存在代码一个数组中,在得到输入的评论后,循环对比 9 缺点:脏话集多,全插代码中感觉有些不妥 10 目前结果:失败 11 失败原因:实际网页效果无法进行循环代替 12 思路2:脏话存在本地的一个txt文本中,等到用的时候再调用 13 思路3:脏话存在本地TXT文本,用Python本地分析后上传网页 14 */ 15 //筛选网络暴力语言end 16 oSize = d;
二、正则过滤
这个是目前可以脏话筛选替换的唯一一个
bug:
1、输入脏话后仍然出现在评论区
2、正常没问题的语句不能显示出来
1 var oSize = $(this).siblings('.flex-text-wrap').find('.comment-input').val();//获取输入内容 2 console.log(oSize);//传说是按下F12后,可以看见log里写的,但是我刚才尝试并没有什么用 3 4 //筛选网络暴力语言begin 5 var reg=/(a)|(b)/g;//这个就是正则式了,将想过滤的词汇放在这里 6 var str=oSize.match(reg).join("\",\"");//match可以将符合的词汇挑出来组成一个数组 7 alert("请不要使用\""+str+"\"等不文明词汇!");
原代码出处
三、未知
bug:
1、我没看懂(捂脸)
2、用这个屏蔽没有用,且评论的话,不能显示
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns=" http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>无标题文档</title> </head><body> <input type="text" id="Name" /><input type="button" value="Test" οnclick="ck()" /> </body> </html> <script type="text/javascript"> function ck(){ var obj=document.getElementById("Name") ; var kw="啊,我,你,他"; //要屏蔽的关键词,多个请用英文输入法状态下的逗号 var tempKw=kw.split(",") if(tempKw.length>=1){ for(i=0;i<tempKw.length;i++){ if(obj.value.indexOf(tempKw[i])>=0) { alert("请不要使用敏感文字!"); break; //退出循环 } }} } </script>
源代码
四、未知
bug:
同上代码的bug
var oPublish = document.getElementById('publish'); var oMessage = document.getElementById('message'); var oReceive = document.getElementById('receive'); var sensitiveWords = ['赵成亮','吴旭东','薛江强','老王','孙毅','丁函','尚启']; oPublish.onclick = function(){var sMessage = oMessage.value;if(sMessage == ''){alert('请输入留言!');return false;} // sensitiveWords.forEach.(function(v){// sMessage = sMessage.replace(v , '***'); // });sensitiveWords.forEach(function (v) {while(sMessage.indexOf(v) !== -1){sMessage = sMessage.replace(v, '***');}});var oLi = document.createElement('li');oLi.innerHTML =sMessage;oReceive.appendChild(oLi);oMessage.value = '';
源代码
转载于:https://www.cnblogs.com/vocoub/p/11518100.html
实现JS脏话筛选替换的几种途径相关推荐
- js 使用多态替换条件语句_用多态和组成替换多个条件
js 使用多态替换条件语句 用多态替换条件语句是一种众所周知的重构模式. 如果您不熟悉该模式,可以在此处查看 . 但是,一旦类中有多个条件检查所基于的字段,该基本解决方案便会开始崩溃. 我们将研究一些 ...
- js刷新页面有哪几种方法
js刷新页面有哪几种方法 一.总结 一句话总结:location属性的reload方法即可:document.location.reload() 1.页面刷新有哪常见的8种方法? 1,history. ...
- 手机视频直播系统开发关于Js敏感词替换成*功能介绍
手机视频直播系统开发关于Js敏感词替换成*功能介绍,实现字符串过滤的方式有很多种,每个编程语言都有相应的处理方式,因语言不同,所使用的函数就有所不同,但最终的目的都是为达到用户的绿色上网,及安全上网, ...
- 【JS继承】常见的7种继承方式
自我介绍:大家好,我是吉帅振的网络日志:微信公众号:吉帅振的网络日志:前端开发工程师,工作4年,去过上海.北京,经历创业公司,进过大厂,现在郑州敲代码. JS继承专栏 1[JS继承]什么是JS继承? ...
- js循环添加事件的两种方法
js循环添加事件的两种方法 选择下拉列表中的一个li将文本传到框中 问题:写此二级菜单时用到的方法不好,对此进行优化 原始js代码: <script>// 思路:1.点击下拉框a时,ul中 ...
- js的全部替换函数replaceAll
JS替换功能函数,用正则表达式解决,js的全部替换,学习js的朋友可以参考下. alert("abacacf".replace('a','9')); alert("aba ...
- handlebars.js 用 br替换掉 内容的换行符
handlebars.js 用 <br>替换掉 内容的换行符 JS: Handlebars.registerHelper('breaklines', function(text) { ...
- iOS: JS和Native交互的两种方法,iosjsnative交互
iOS: JS和Native交互的两种方法,iosjsnative交互 背景: UIWebView: iOS 用来展示 web 端内容的控件. 1. 核心方法: - (NSString*)string ...
- js中当等于最小值是让代码不执行_网页中JS函数自动执行常用三种方法
本文为大家分享了在网页中JS函数自动执行常用方法,供大家参考,具体内容如下 一.JS方法 1.最简单的调用方式,直接写到html的body标签里面: 2.在JS语句调用: function myfun ...
最新文章
- Winform开发框架中工作流模块之审批会签操作
- C语言动态内存相关函数
- 编译时异常和运行时异常的区别
- TrinityCore3.3.5编译过程-官方指导-踩坑总结
- GC内存可视化器教程–第一部分
- Ubuntu全盘备份与恢复
- HTML5- Canvas入门(五)
- Docker 更新版本
- MESHLAB安装教程
- matlab对语音信号预加重处理,语音信号的预加重处理和加窗处理 | 学步园
- 通过阿里接口查询银行卡信息
- java(娄娄)的表白代码
- 档案管理系统操作说明
- html的空心箭头,CSS实现空心三角指示箭头
- Windows10下安装Wamp Server(wamp5_1.7.4)-图文教程
- 计算机毕业设计Java物流信息管理系统录像演示(源码+系统+mysql数据库+Lw文档)
- Java在Web端微信公众号授权登录
- Unity中的设备唯一码GAID、IDFA,用于广告跟踪和数据统计
- python游戏联机_CoderZh首款Python联机对战游戏 - NancyTetris1.0倾情发布(一)
- 看了让人吐血的146个脑筋急转弯问题
热门文章
- web前端课程设计——动漫网页2个网页HTML CSS web前端开发技术 web课程设计 网页规划与设计
- android蓝牙开源,开源蓝牙框架 Android-BLE
- 基于Arduino单片机的nRF24L01+无线遥控装置设计(爆肝制作)
- RestTemplate调用微信小程接口异常:RestClientException: Could not extract response: no suitable HttpMessageConve
- Webmin安装过程及问题解决
- C语言实现秒与时间的互相转换
- 计算机科学 高中研究项目,2013全国第28届青少年科技创新大赛高中《计算机科学》作品《项目简介》...
- 电源辐射整改 30MHZ-50MHZ的EMI辐射理论分析
- 福建公共交易平台portal-sign
- UsbDeviceManager.java