正则表达式全篇

1. 正则表达式概述

  • 正则表达式:也叫规则表达式,按照一定的规则组成的一个表达式
  • 正则表达式的作用:主要是匹配字符串的,验证表单,过滤敏感词(替换)
  • 正则表达式的组成:是由元字符或者是限定符组成的一个式子

2. 正则表达式对象创建

  1. 构造函数创建对象:
  var  reg = new  RegExp(/\d{1,5}/); 
  1. 字面量:
 var reg = /\d{1,5}/;

3. 正则表达式的方法

序号方法参数描述返回值
1.test(字符串)字符串验证字符串是否符合正则表达式的规则布尔值
   /*1. test(字符串) 返回boolean值,验证字符串是否符合正则表达式的规则*/
   var  reg = new  RegExp(/\d{1,5}/)
   reg.test("呵呵123");
   //或者:
   /\d{1,5}/.test("呵呵123") //可以用正则表达式直接调用方法

4. 边界符(位置符)

序号边界符描述
1^在 [] 外面以什么开始,在 [] 里面取非(取反)
2^[0-9]以数字开头
3^[a-z]以小写字母开头
4[^0-9]取反,非数字
5[^a-z]非小写字母
6[^0-9a-zA-Z_]表示的是特殊字符
7$表示的是以什么结束
8[0-9][a-z]$必须以小写字母结束
9^[0-9][a-z]$严格模式,(一个数字开头加一个字母结束)

5. 量词符

序号量词符描述
1*前面的表达式出现了0--多次
2[a-z][0-9]*小写字母中的任意一个 后面是要么是没有数字的,要么是多个数字的
3+前面的表达式出现了1--多次
4[a-z][9]+小写字母一个,后面最少一个9,或者多个9
5?前面的表达式出现了0次或1次
6[4][a-z]?前面一个4,后面任意小写字母出现0或1次
7{}更加的明确前面的表达式出现的次数
8{3}表示的是前面的表达式出现了3次
9{0,}表示的是前面的表达式出现了0--多次(和 *一样的)
10{1,5}表示的是前面的表达式出现了1--5次

6. 优先级

  • () 分组 提升优先级
    [0-9]|([a-z])|[A-Z] //表示要么是数字要么是一个字母,([a-z])被括号包裹了所以字母以小写优先
    ([0-9])([1-5])([a-z]) //多组的情况下, 从最左边开始计算

7. 元字符

序号元字符描述
1.除了\n以外的任意的一个字符
2[]范围
3[0-9]0到9之间的任意的一个数字
4[0-9a-zA-Z]所有的数字或者是字母中的一个
5|或者
6[0-9]|[a-z]表示的是要么是一个数字,要么是一个小写的字母

8. 简写

序号简写描述
1\d数字中的任意一个
2\D非数字中的一个
3 \s 空白符中的一个
4 \S非空白符
5 \w非特殊符号
6 \W特殊符号
7 \b单词的边界

9. 正则表达式的参数:/表达式/[switch]

  • 正则表达式中:g 表示的是全局模式匹配(就是字符串中所有匹配的部分)
  • 正则表达式中:i 表示的是忽略大小写
  • gi可以一起写,就是忽略大小写全局匹配
	   var str="中国移动:10086,中国联通:10010,中国电信:10000";
       //把str里面所有的数字全部显示出来
       var array = str.match(/\d{5}/g);
       console.log(array);

10. 正则表达式的替换(String的方法)

  • replace(参数,参数)方法可以实现替换字符操作,用来替换的参数可以是一个字符串, 也可以是一个正则表达式;
    第一个参数:被替换的字符串或者正则表达式
    第二个参数:替换为的字符串
    返回值是一个替换完的新字符串
    'abcda'.replace(/a/,"xx")  //只替换一个位置的'a'
    'abcda'.replace(/a/g,"xx") //替换所有的'a'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值