正则表达式

121 阅读1分钟

正则表达式

作用:

1、验证字符串

2、替换文本。

3、根据模式匹配从字符串中提取一个子字符串。

基本语法:

1、定义正则表达式: let ref = /正则表达式/

2、校验方法: 正则表达式.test(字符串),返回true/false

边界符:

1、作用:限定匹配的字符的长度

2、语法: /^表达式$/

转义字符

1、 \ : 将元字符当成普通字符来处理

改变优先级

正则表达式一般是从左到右执行

() :括号可以改变它的优先级

元字符:

1、占位符

​ 1、\w:匹配一个合法字符,合法字符有: 0-9 a-z A-Z _

​ 2、\d:代表一个数字: 【0-9】

​ 3、\s:匹配一个空字符,空字符是指看不见内容的字符,如 空格,制表位 ,换行符

​ 4、\W:代表一个非法字符

​ 5、\D:代表一个非数字

​ 6、\S:匹配一个非空字符

​ 7、[指定的字符范围]:匹配指定的范围中的某一个字符

​ 8、. :代表任意的一个字符

2、修饰符

​ 1、作用:修饰前面的字符所出现的次数

​ 2、*:修饰前面的字符出现任意次

​ 3、+:修饰前面的字符出现一次或多次

​ 4、?:修饰前面的字符出现0次或1次

​ 5、{n}:修饰前面的字符出现n次

​ 6、{n,m}:修饰前面的字符最少出现n次,最多m次

​ 7、{n,}:修饰前面的字符最少出现n次,最多 没有限制

常用的方法

1、test:进行匹配验证

2、replace:替换 是字符串的方法,只不过方法可以传递正则表达式做为参数 g表示全局匹配:匹配全部的内容

  let str = '23141241324123423112'
      // 将里面的1全部干掉---将1替换为''
      let reg = /1/g    // g全局,匹配所有
  str = str.replace(reg, '')
  console.log(str)

3、exec:侧重是匹配之后的字符串提取

​ 1、调用这个方法如果成功返回一个数组,否则返回null

​ 2、提取:如果想提取字符串,就将你想提取的字符串的正则表达式部分,使用()包含 ​

  let email = 'wuhu0723@126.com'
  let reg = /^(\w{1})(\w+)[@]((\w+)[.](\w+))$/
  let obj = reg.exec(email)
  console.log(obj)