过滤敏感词及正则表达式

使用正则表达式筛选出要过滤的词,使用replace替换掉。

let textarea = document.querySelector("textarea");let btn = document.querySelector("button");let p = document.querySelector("p");let reg = /傻子|坏蛋/g; //全局过滤词btn.addEventListener('click', function() {var text = textarea.value.replace(reg, '*')  //把敏感词替换成*p.innerText = text;})

正则表达式

一、创建与检测
1.利用RegExp对象创建。2.利用字面量创建。3.test方法检测字符串是否符合正则表达式要求规范。

var regexp=new RegExp(/123/);//1.利用RegExp对象创建 不加引号
var re=/456/;//2.利用字面量创建
console.log(re.test(123456));//true 3.

二、字符类
[ ]表示有一系列字符可供选择,只要匹配其中一个就可以了。

量词 说明
* 重复0次或更多次
+ 重复一次或更多次
? 重复0次或一次
{n} 重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次
边界符 说明
^ 表示匹配行首的文本(以谁开始)
$ 表示匹配行尾的文本(以谁结束)
/^abc$/ 精确匹配,必须是abc
var re=/^a+$/;//一次以上
console.log(re.test('aaaa'));
var re=/^a?$/;//0或1次
console.log(re.test('a'));
console.log(re.test(''));
var re=/^a{3,}$/;//大于等于3
console.log(re.test('aaaaaa'));
var re=/^a{3,5}$/;//3到5

三、括号总结

  • 大括号 量词符 里面表示重复次数
  • 中括号 字符集合 匹配方括号中的任意字符
  • 小括号 表示优先级

四、预定义类(简写方式)

预定类 说明
\d 匹配0-9之间的任一数字,相对于[0-9]
\D 匹配所有0-9以外的字符,相对于[^0-9]
\w 匹配任意的字母,数字和下划线,相当于[A-Za-z0-9]
\W 除所有字母,数字和下划线以外的字符,相当于[^A-Za-z0-9]
\s 匹配空格(包括换行符,制表符,空格符),相当于[\t\r\n\v\f]
\S 匹配非空格字符
var re=/^\d(3,4)-\d(7,8)$/;//010-12345678 0530-1234567

正则里面的或者 符号 |

表单验证

var uname=document.querySelector('.uname');
var span=document.querySelector('span');
var re=/^[0-9]{6,11}$/;//6-11次
uname.onblur=function(){if(re.test(this.value)){span.innerHTML="输入的格式正确";}else{span.innerHTML="输入的格式不正确";}}

正则替换

stringobject.replace(regexp/substr,repalcement)
  • 第一个参数:被替换的字符串或者正则表达式
  • 第二个参数:被替换的字符串
  • 返回值是一个替换完毕的新的字符串
div.innerHTML= text.value.replace(/傻子/,'***');//替换
div.innerHTML= text.value.replace(/傻子/g,'***');//替换

g:全局匹配,i:忽略大小写 ,gi:全局匹配+忽略大小写

过滤敏感词及正则表达式相关推荐

  1. python过滤敏感词汇_利用Python正则表达式过滤敏感词的方法

    利用Python正则表达式过滤敏感词的方法 问题描述:很多网站会对用户发帖内容进行一定的检查,并自动把敏感词修改为特定的字符. 技术要点: 1)Python正则表达式模块re的sub()函数: 2)在 ...

  2. JS10day(api 阶段性完结,正则表达式简介,自定义属性,过滤敏感词案例,注册模块验证案例)

    文章目录 正则表达式 先看看在JS中它的语法: 1. 定义正则表达式语法: 2.判断是否有符合规则的字符串: 3.检索(查找)符合规则的字符串: 元字符: 1. 边界符: 2. 量词 (表示重复次数) ...

  3. flex java 全局拦截_flex + java 过滤敏感词

    过滤敏感词这个相对比较容易做到,网上也很多方法,看得比较多的一个方法就是:把所有的敏感词写入到一个properties文件中,程序启动时拼成一个正则表达式.这个也只是比较基础的敏感词过滤器,比较强大的 ...

  4. php敏感字符串过滤_PHP的一个过滤敏感词或脏话的方法

    PHP的一个过滤敏感词或脏话的方法 主要使用了  int substr_count ( string haystack, string needle [, int offset [, int leng ...

  5. php过滤敏感词实例代码

    php过滤敏感词实例代码 <?php   /**     * Created by JetBrains PhpStorm.     * User: lsl     * Date: 13-8-28 ...

  6. python过滤敏感词记录

    简述: 关于敏感词过滤可以看成是一种文本反垃圾算法,例如 题目:敏感词文本文件 filtered_words.txt,当用户输入敏感词语,则用 星号 * 替换,例如当用户输入「北京是个好城市」,则变成 ...

  7. ios 弹幕过滤敏感词方案对比和性能测试

    在看视频的过程中, 很多用户会发弹幕, 当前用户可以设置过滤敏感词和敏感用户,  设置后, 命中敏感词和敏感用户的弹幕就不会显示. 敏感词和敏感用户的设置上限为各100. 由客户端进行过滤, 不区分大 ...

  8. C#过滤敏感词DFA算法

    今天游戏正好用到需要过滤敏感词将出现的敏感词替换成*,在网上找了许久找了一片可用的java版本的DFA算法,最后费了一番功夫将其思路用C#实现,里面的注释甚至都没改动的,这里直接上代码,这里不借助任何 ...

  9. 第三章:过滤敏感词、帖子管理

    过滤敏感词 根节点没有字符,到最末节点拼起来才是敏感字符,做一个标记在最后. 过滤符号 /* * 过滤敏感词 * 参数:待过滤的文本, 返回过滤后的文本 * */ public String filt ...

最新文章

  1. Datawhale组队学习周报(第018周)
  2. 【i.MX6UL/i.MX6ULL开发常见问题】单独编译内核,uboot生成很多文件,具体用哪一个?...
  3. 双边z变换公式_光通信与数学 傅里叶变换
  4. 景切换的时候加上遮罩
  5. 找不到文件、主类名和文件名不一致、缺少分号的解决方法
  6. 鱼c论坛python课后作业_三日速成python?打工人,小心钱包,别当韭菜
  7. java文件流操作注意
  8. Android adb 启动APP
  9. 【latex】最后一页 参考文献不平衡 左右不对齐
  10. 这台计算机上缺少此项目引用的 NuGet 程序包,DotNetCompilerPlatform
  11. Linux上快速安装软RAID详细步骤
  12. 计算机毕业设计php校园餐厅网上订餐系统
  13. 计算机总是蓝屏怎么解决办法,电脑经常蓝屏怎么办?教你解决几种常见的蓝屏问题...
  14. 向深海微生物学习,提高太阳能转换效率
  15. PDF格式转JPG格式怎么转?掌握方法其实很简单
  16. CocosCreator之KUOKUO带你做刚体移动与物品拾取到背包
  17. 重庆市总工会送法到中建三局城建档案馆项目
  18. D3D9利用顶点缓冲区绘制三角形
  19. 黎明重工生产的颚式破碎机性能特点
  20. c语言转义字符c,C语言转义字符

热门文章

  1. 用多媒体计算机画图教学设计,用计算机画图教学设计
  2. 【《C Primer Plus》读书笔记】第17章:高级数据表示
  3. 偷偷学习Java,然后惊艳所有人 JavaSE总结 - thread多线程
  4. HTML5+CSS3+JQuery小实例:简单又令人惊艳的hover效果登录界面
  5. 获取微信版本,判断当前该版本是否支持微信开放标签【wx-open-launch-app】
  6. linux环境下玩转截图
  7. 用计算机移动怎么操作,如何操作电脑
  8. mysql的cell_这篇发生Cell的数据库到底特殊在哪里?
  9. java中表格不显示表头_表格(隐藏表头)
  10. 单方面论述题-前缀和-小科的神笔详解+代码——伟大的旭哥的博客