当前位置: 首页 > news >正文

js正则,这点儿就够用了

1、i /[0-9]/i,模糊匹配,不区分大小写,但只匹配一次;
2、g /[0-9]/i,全部匹配,区分大小写;同一正则重复使用test时,若上一个为true,lastIndex会保留作为下一次test的起始位置,bi如:r=/a/g;r.test('ab')//true; r.test('ab')//false;
3、m /[0-9]/i,换行匹配,区分大小写,一般用来匹配每行的首尾;
4、w /w/g,匹配数字,字母,下划线;W:匹配非数字、字母、下划线;
5、s /s/g,匹配空格;S:匹配非空格;
6、d /d/g,匹配数字[0-9];D:匹配非数字;
7、b /b/g,匹配单词(字母,数组,下划线)边界;B:匹配非单词边界;
8、r /r/g,匹配回车符;
9、n /n/g,匹配换行符;
10、n* 匹配该字符的0个或多个;
11、n+ 匹配该字符的一个或多个;
12、n? 匹配该字符的0个或一个;
13、n{X}匹配该字符的X个n;
14、n{X,}匹配至少x个n;
15、n{X,Y}匹配至少X个,最多Y个;会先匹配少的;
16、[0-9]匹配一个任意数字;
17、[a-z]匹配一个任意小写字母;
18、[A-Z]匹配一个任意大写字母;
19、[A-z]匹配一个任意字母(不区分大小写);

匹配一个url地址;
匹配非负整数:re=/^d+$/;
匹配整数 :re=/^-?d+$/;
匹配负整数 :re=/^-d+$/;
匹配非负数 :re=/^[0-9]+.?[0-9]*$/;
匹配负数 :re=/^-[0-9]+.?[0-9]*$/;
匹配(首位为字母数字或下划线):re=/^w(([A-z]|d)w?)+$/;
匹配汉子:re=/^[u4e00-u9fa5]{0,}$/;
匹配邮箱:/^w+([-.]?w+)@w([-.]w+)*(.w+)+$/
去除关键字:re=/xx|ww|ss/g;
str.replace(re,(v)=>{return Array(v.length+1).join('*')})
统计关键字出现的次数:
let middleObject={};
str.replace(re,v=>{middleObject[v]?middleObject[v]++:middleObject[v]=1})
return middleObject;

相关文章:

  • Vue2.0史上最全入坑教程(中)—— 脚手架代码详解
  • “美云启航 智数未来”——美云智数产品发布会圆满召开
  • ServletContext两个Servlet传值学习笔记
  • WPF 自定义TabControl控件样式
  • kvmgt-kernel 实现GPU虚拟化
  • 深入理解-CSS内联元素之font-size
  • 我为什么要关心区块链?概述和接纳
  • MySQL 5.7.20在RedHat 7.2上通过RPM包安装
  • 面试题3:数组中重复的数字,不能修改原数组
  • 蓝牙 bluez 的编程 C C++
  • Golang自定义包总结
  • Js基础——数据类型之Null和Undefined
  • 如何调用带返回值类型的函数
  • 通过pfSense阻止对某个网站的访问
  • scala基础语法(二)
  • 2017-08-04 前端日报
  • Apache的80端口被占用以及访问时报错403
  • Java新版本的开发已正式进入轨道,版本号18.3
  • Linux快速复制或删除大量小文件
  • Vue 重置组件到初始状态
  • vue:响应原理
  • Vue2.0 实现互斥
  • webpack项目中使用grunt监听文件变动自动打包编译
  • 给新手的新浪微博 SDK 集成教程【一】
  • 驱动程序原理
  • 少走弯路,给Java 1~5 年程序员的建议
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • ​configparser --- 配置文件解析器​
  • ​低代码平台的核心价值与优势
  • (12)Linux 常见的三种进程状态
  • (LeetCode) T14. Longest Common Prefix
  • (Redis使用系列) SpirngBoot中关于Redis的值的各种方式的存储与取出 三
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (转) RFS+AutoItLibrary测试web对话框
  • (转)关于pipe()的详细解析
  • .net Application的目录
  • .NET MAUI学习笔记——2.构建第一个程序_初级篇
  • .NET WebClient 类下载部分文件会错误?可能是解压缩的锅
  • @transaction 提交事务_【读源码】剖析TCCTransaction事务提交实现细节
  • []error LNK2001: unresolved external symbol _m
  • []使用 Tortoise SVN 创建 Externals 外部引用目录
  • [145] 二叉树的后序遍历 js
  • [AMQP Connection 127.0.0.1:5672] An unexpected connection driver error occured
  • [BT]小迪安全2023学习笔记(第15天:PHP开发-登录验证)
  • [BZOJ1040][P2607][ZJOI2008]骑士[树形DP+基环树]
  • [C#]winform制作圆形进度条好用的圆环圆形进度条控件和使用方法
  • [C/C++]_[初级]_[关于编译时出现有符号-无符号不匹配的警告-sizeof使用注意事项]
  • [C++]:for循环for(int num : nums)
  • [CareerCup] 17.8 Contiguous Sequence with Largest Sum 连续子序列之和最大
  • [Flutter] extends、implements、mixin和 abstract、extension的使用介绍说明
  • [IDF]啥?
  • [iOS开发]事件处理与响应者链
  • [JS] 常用正则表达式集(一)
  • [pyqt5]pyqt5设置窗口背景图片后上面所有图片都会变成和背景图片一样