一.定义:

        直接量:/s$/

        构造函数:new RegExp(“s$”);

    各种字符与元字符:

1.直接量字符:支持非字母的匹配,通过反斜线(\)进行转义   

JS之正则表达式

 

2.字符类:一个字符类可以匹配它所包含的任意字符

JS之正则表达式

 

3.重复:正则表达式的模式匹配总是会寻找字符串中第一个可能匹配的位置

JS之正则表达式

非贪婪的重复:只需在待匹配的字符后跟随一个问号

 

4.选择,分组和引用:

JS之正则表达式

()作用:a.把单独的项组合成子表达式

                  b.在完整的模式中定义子模式,可以从目标中抽出和圆括号中的子模式相匹配的部分

                  c.允许在同一正则表达式的后部引用前面的子表达式

5.指定匹配位置

JS之正则表达式

6.修饰符:修饰符是放在/符号之外的

JS之正则表达式

 

二.用于模式匹配的String方法

1.search()不支持全局检索,忽略正则表达式参数中的修饰符g

2.replace()

3.match()

4.split()

三.RegExp对象

    三个方法和一些属性

属性:

    sourse是一个只读的字符串,包含正则表达式的文本

    global是一个只读的布尔值,说明这个正则表达式是否带有修饰符g

    ignoreCase是一个只读的布尔值,说明正则表达式是否带有修饰符i

    multiline只读布尔值,是否带有m

    lastIndex是一个可读/写的整数

方法:RegExp方法参数是一个字符串,而String方法参数是一个RegExp对象

    exec()在一个字符串中执行匹配检索,若有返回数组,没有返回null

    test()

-------------------------------------------------------------------------------------------------

es6新增

新增了几个修饰符:

  1. s表示将 . 操作符表示任意字符,es5不能匹配\n等换行符。例如:/chj.ssg/.test('chj\nssg')  //false,/chj.ssg/s.test('chj\nssg')  //true
  2. u修饰符表示Unicode模式,用来检索大于\uFFFF的字符,可以处理4个字节的Unicode
  3. y修饰符,跟g差不多,,具有粘性(sticky)

String增加了matchAll函数

 

 

 

相关文章:

  • 2021-12-15
  • 2022-01-08
  • 2021-08-01
  • 2021-07-15
  • 2021-11-11
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-14
  • 2021-10-18
  • 2022-12-23
相关资源
相似解决方案