vue 敏感词过滤 前端

根据正则来进行过滤 敏感词是一个数组 词比较多 专门存放在js文件里面 vue用 export 导出 再引入到需要用的组件里

judgeBadWord(obj) {let word = words.words //获取敏感词的数组//进行遍历for (let i=0;i<word.length;i++) {/*替换全部空格*/// let arr = obj.replace(/\s+/g,"")this.contents = obj//gi g全局  i不分大小写let reg = new RegExp(word[i],"gi")//用indexOf 判断是否包含if(this.contents.indexOf(word[i]) !== -1){let result = this.contents.replace(reg,"***")this.contents = resultreturn true}}}//在发送消息时进行调用就行了

刚开始这样写以为没啥问题 但是当同一句话中出现多个不同敏感词时 后面的会过滤不掉 进行改进了一下

judgeBadWord(str,badWord){//trim() 方法不会改变原始字符串 去掉首尾空白符this.contents = str.trim()var re = ''//正则过滤 模版字符串 \b 是一个整单词for(var i=0;i<badWord.length;i++){if(i==forbiddenArray.length-1)re += `\\b${badWord[i]}\\b`elsere += `\\b${badWord[i]}\\b`+"|"}var reg = new RegExp(re,"gi")this.contents=this.contents.replace(reg,"***")return this.contents}

到这了以为可以结束了 可是敏感词里有 两个英语单词组成
hellow 是敏感词 hellow word 也是敏感词 输入hellow word 的时候 helllow会变成*** word不会 不能自己去把数组里面的字符串自己调位置吧
就 把数组进行了 排序

    //这里用map可以进行链式调用 字符串的length 从高到低排序let word = words.wordsthis.rtn = word.map(i => ({raw: i, len: i.length})).sort((p, n) => n.len - p.len).map(i => i.raw)

只是记录一下 其中性能方面还可以优化一下 不足之处 还请多多关照!!!!

vue 敏感词过滤 前端相关推荐

  1. 5分钟Serverless实践 | 构建无服务器的敏感词过滤后端系统

    前言 在上一篇"5分钟Serverless实践"系列文章中,我们介绍了什么是Serverless,以及如何构建一个无服务器的图片鉴黄Web应用,本文将延续这个话题,以敏感词过滤为例 ...

  2. 【Lilishop商城】No3-2.模块详细设计,系统设置(系统配置、行政区划、物流公司、滑块验证码图片、敏感词过滤)的详细设计

     仅涉及后端,全部目录看顶部专栏,代码.文档.接口路径在: [Lilishop商城]记录一下B2B2C商城系统学习笔记~_清晨敲代码的博客-CSDN博客 全篇会结合业务介绍重点设计逻辑,其中重点包括接 ...

  3. 5分钟搞定敏感词过滤!

    函数工作流(FunctionGraph,FGS)是一项基于事件驱动的函数托管计算服务,托管函数具备以毫秒级弹性伸缩.免运维.高可靠的方式运行.通过函数工作流,开发者无需配置和管理服务器,只需关注业务逻 ...

  4. 转:鏖战双十一-阿里直播平台面临的技术挑战(webSocket, 敏感词过滤等很不错)...

    转自:http://www.infoq.com/cn/articles/alibaba-broadcast-platform-technology-challenges 鏖战双十一-阿里直播平台面临的 ...

  5. TypeScript:Aho–Corasick算法实现敏感词过滤

    敏感词过滤应该是许多后端同事经常会遇到的需求,无论是评论.弹幕.文章,都需要做敏感词过滤处理来规避风险.在前端开发中,使用replace函数来替换字符串是我们的常规操作,在这之前我思考过如果用Java ...

  6. .NET 6 实现敏感词过滤

    一.什么是敏感词过滤? 敏感词过滤是一种处理网络内容的技术,可以检测和过滤出网络中的敏感/违禁词汇.它通过给定的关键字或字符串,判断网络内容是否包含某些敏感信息,从而防止违反法律法规的信息流通. 通常 ...

  7. java dfa 敏感词_java利用DFA算法实现敏感词过滤功能

    前言 敏感词过滤应该是不用给大家过多的解释吧?讲白了就是你在项目中输入某些字(比如输入xxoo相关的文字时)时要能检 测出来,很多项目中都会有一个敏感词管理模块,在敏感词管理模块中你可以加入敏感词,然 ...

  8. 算法-DFA算法-敏感词过滤算法(OC、Swift、Python)

    前言 前段时间,公司的IM SDK想做敏感词过滤,但是后端的小伙伴<比较忙>,在开产品需求会的时候想把敏感词过滤放到前端,让iOS.安卓自己搞,但是前端小伙伴写了一个方法来检测一段文本,耗 ...

  9. dfa算法 java_java实现敏感词过滤(DFA算法)

    小Alan在最近的开发中遇到了敏感词过滤,便去网上查阅了很多敏感词过滤的资料,在这里也和大家分享一下自己的理解. 在写之前,小Alan给大家推荐一篇来自http://cmsblogs.com/?p=1 ...

最新文章

  1. 六 Lync Server 2013 部署指南-OWA服务器部署
  2. TCP/IP面试常问合集,JavaWeb内容及HTTP协议
  3. Flask--WebSocket
  4. python线上编辑问题_python django - static文件处理与线上部署测试
  5. Asterisk权威指南/第五章 用户设备配置
  6. 【HDU - 2087】 剪花布条(直接模拟 or KMP)
  7. Financial Terminology - Shares, Stock, Equity,Security
  8. Java虚拟机(二)——垃圾回收与内存分配
  9. hdu-1521 排列组合 指数型母函数
  10. 速学堂java面试题_速学堂JAVA300集 第四章作业练习题
  11. java list转成map对象_在Java 8中将List转换为Map对象方法
  12. 未root的情况下获取墨墨背单词的databases文件夹
  13. Kubernetes总结一:初识Kubernetes
  14. win10双显卡怎么切换amd和英特尔_win10系统双显卡切换到独立显卡的操作方法
  15. vue项目目录详细解读
  16. 记录一次数据库被黑的过程
  17. 微信支付(扫码支付)微信公众平台开发教程(6)
  18. java 将HTML文件转成pdf
  19. shiro权限拦截失效
  20. 管理学一些常用定律(转)

热门文章

  1. 爬虫——Scrapy框架案例一:手机APP抓包
  2. 2017南开秋奥鹏作业计算机,南开17秋学期《DirectX程序设计》在线作业(资料)...
  3. 粉笔公考——方法精讲——资料分析
  4. 谷歌发布 12 款 Chrome 新皮肤
  5. FLAC3D 的入门介绍
  6. Linux性能测试工具之filesystem(三)
  7. 【用es6写个机选彩票】
  8. 图片批处理工具:ImageSize Mac
  9. MySQL 不等于的三种表示及区别
  10. SSH协议原理和实践