一、逐个替换用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脏话筛选替换的几种途径相关推荐

  1. js 使用多态替换条件语句_用多态和组成替换多个条件

    js 使用多态替换条件语句 用多态替换条件语句是一种众所周知的重构模式. 如果您不熟悉该模式,可以在此处查看 . 但是,一旦类中有多个条件检查所基于的字段,该基本解决方案便会开始崩溃. 我们将研究一些 ...

  2. js刷新页面有哪几种方法

    js刷新页面有哪几种方法 一.总结 一句话总结:location属性的reload方法即可:document.location.reload() 1.页面刷新有哪常见的8种方法? 1,history. ...

  3. 手机视频直播系统开发关于Js敏感词替换成*功能介绍

    手机视频直播系统开发关于Js敏感词替换成*功能介绍,实现字符串过滤的方式有很多种,每个编程语言都有相应的处理方式,因语言不同,所使用的函数就有所不同,但最终的目的都是为达到用户的绿色上网,及安全上网, ...

  4. 【JS继承】常见的7种继承方式

     自我介绍:大家好,我是吉帅振的网络日志:微信公众号:吉帅振的网络日志:前端开发工程师,工作4年,去过上海.北京,经历创业公司,进过大厂,现在郑州敲代码. JS继承专栏 1[JS继承]什么是JS继承? ...

  5. js循环添加事件的两种方法

    js循环添加事件的两种方法 选择下拉列表中的一个li将文本传到框中 问题:写此二级菜单时用到的方法不好,对此进行优化 原始js代码: <script>// 思路:1.点击下拉框a时,ul中 ...

  6. js的全部替换函数replaceAll

    JS替换功能函数,用正则表达式解决,js的全部替换,学习js的朋友可以参考下. alert("abacacf".replace('a','9')); alert("aba ...

  7. handlebars.js 用 br替换掉 内容的换行符

    handlebars.js 用 <br>替换掉 内容的换行符 JS: Handlebars.registerHelper('breaklines', function(text) {    ...

  8. iOS: JS和Native交互的两种方法,iosjsnative交互

    iOS: JS和Native交互的两种方法,iosjsnative交互 背景: UIWebView: iOS 用来展示 web 端内容的控件. 1. 核心方法: - (NSString*)string ...

  9. js中当等于最小值是让代码不执行_网页中JS函数自动执行常用三种方法

    本文为大家分享了在网页中JS函数自动执行常用方法,供大家参考,具体内容如下 一.JS方法 1.最简单的调用方式,直接写到html的body标签里面: 2.在JS语句调用: function myfun ...

最新文章

  1. Winform开发框架中工作流模块之审批会签操作
  2. C语言动态内存相关函数
  3. 编译时异常和运行时异常的区别
  4. TrinityCore3.3.5编译过程-官方指导-踩坑总结
  5. GC内存可视化器教程–第一部分
  6. Ubuntu全盘备份与恢复
  7. HTML5- Canvas入门(五)
  8. Docker 更新版本
  9. MESHLAB安装教程
  10. matlab对语音信号预加重处理,语音信号的预加重处理和加窗处理 | 学步园
  11. 通过阿里接口查询银行卡信息
  12. java(娄娄)的表白代码
  13. 档案管理系统操作说明
  14. html的空心箭头,CSS实现空心三角指示箭头
  15. Windows10下安装Wamp Server(wamp5_1.7.4)-图文教程
  16. 计算机毕业设计Java物流信息管理系统录像演示(源码+系统+mysql数据库+Lw文档)
  17. Java在Web端微信公众号授权登录
  18. Unity中的设备唯一码GAID、IDFA,用于广告跟踪和数据统计
  19. python游戏联机_CoderZh首款Python联机对战游戏 - NancyTetris1.0倾情发布(一)
  20. 看了让人吐血的146个脑筋急转弯问题

热门文章

  1. web前端课程设计——动漫网页2个网页HTML CSS web前端开发技术 web课程设计 网页规划与设计
  2. android蓝牙开源,开源蓝牙框架 Android-BLE
  3. 基于Arduino单片机的nRF24L01+无线遥控装置设计(爆肝制作)
  4. RestTemplate调用微信小程接口异常:RestClientException: Could not extract response: no suitable HttpMessageConve
  5. Webmin安装过程及问题解决
  6. C语言实现秒与时间的互相转换
  7. 计算机科学 高中研究项目,2013全国第28届青少年科技创新大赛高中《计算机科学》作品《项目简介》...
  8. 电源辐射整改 30MHZ-50MHZ的EMI辐射理论分析
  9. 福建公共交易平台portal-sign
  10. UsbDeviceManager.java