正则表达式基础恶补

1.基本用途

正则表达式两种基本用途:搜索和替换。

2.单个字符匹配(.)


.字符可以匹配任何单个字符,类似于sql中的_。注意特殊字符匹配时要使用反斜杠\\。

3.匹配一组字符([])


  • []之间的所有字符都是该集合的组成部分,字符集合的匹配结果是能够与集合中任何一个成员匹配的文本。
  • 字符-可以以字符区间的方式给出,例如:[0-9]等同于[0123456789]。常用的还有[a-zA-Z]。
  • 元字符^表明相对一个字符集和进行取非匹配,与逻辑非运算类似。

4.元字符


对元字符进行转义要用到\。如\[, \d, \]等。

  • \d任何一个数字字符;
  • \D任何一个非数字字符
  • \w任何一个字母数字或下划线,等于[a-zA-Z0-9_];
  • \W相当于[^a-zA-Z0-9_]
  • \s任何一个空白字符;
  • \S任何一个非空白字符。
贪婪型or懒惰型

贪婪型

懒惰型

+?

*?

{n,}

{n,}?


  在防止过度匹配的情况下,可以使用懒惰型元字符。

5.重复匹配


  • +匹配一个或多个字符;
  • *匹配零个或多个字符
  • 匹配一个字符(或字符集合)的零次或者一次出现,表示可能出现或者不出现的情况。例如https?
  • {n}设定重复次数,把数值卸载他们中间即可。
  • {m,n}为重复匹配次数设定一个区间,例如{2,4}表示至少重复2次、最多重复4次。


6.位置匹配


  • 单词边界:\b限定符制定单词边界。如\bcat\b。
  • 字符串边界:用^定义字符串开头,$定义字符串结尾。

    ps:测试工具

原文地址:https://www.cnblogs.com/janes/p/2455432.html