正则表达式Regular Expression

正则表达式,又称规则表达式,它通常被用来检索、替换那些符合某个模式(规则)的文本。
在正式书写下面的内容之前,先安利一个非常好用的正则工具
详见https://jex.im/regulex/

  1. 在JavaScript中使用正则表达式:

    var reg = /\bword\b/g (\b单词边界,g为进行全局匹配)

    var reg = new RegExp(’\bword\b’,‘g’) (此处两个反斜线\,是因为需要转义)

  2. 修饰符
    i 忽略大小写
    m 进行多行搜索

  3. 匹配a或b或c,可以使用[abc]
    匹配0到9的数字时,可以使用[0-9]
    在这里插入图片描述
    匹配0到9的数字和-

  4. 正则预定义类
    . 等价于 [^\r\n],意思是匹配除了回车和换行外的所有字符
    \d 等价于 [0-9]
    \D 等价于 [0-9],其中是取反的意思
    \s [\t\n\x0B\f\r],表示空白符
    \w [a-zA-Z_0-9],表示单词字符
    同理\S,\W分别表示非空白符和非单词字符。

  5. 正则表达式中的量词

匹配0次或1次,使用?
至少匹配1次,使用+
匹配任意次,则使用*
匹配n次,使用{n}
匹配n到m次,使用{n,m}
匹配至少n次,使用{n,}
需要注意,匹配至多m次,使用{0,m},而不是{,m}

  1. 贪婪模式和非贪婪模式
    在这里插入图片描述
    如图中所示,匹配尽可能多次,若要进行最少次数的匹配,则只需要在量词后面加入?即可
  2. 正则中的分组
    使用()进行分组,可以用$1 $2进行捕获,这种分组捕获的方式,为反向引用。
    在这里插入图片描述
    分组,捕获图示

猜你喜欢

转载自blog.csdn.net/jianxin1021/article/details/86032526
今日推荐