首页 > 代码库 > 正则表达式知识梳理

正则表达式知识梳理

  首先先贴个网址:https://regexper.com/ 

  此工具是用来帮助理解正则表达式的,在你阅读正则表达式的时候非常有用。

元字符:

  具有特殊含义的非字母字符。包括: * + ?^ $ . | \ ( ) [ ] { } ,如果你能一下子就说出这些符号的含义,表示正则表达式的基础已经掌握了。

  []:用来匹配一类字符里的一个;

  [^]:[^表示不包括这类字符。中括号中的^表示取反的意思;

  [-]:中括号的里-表示范围的意思。

  .  :匹配所有字符。

  \d:匹配所有的数字;

  \D:匹配所有的非数字;

  \s:匹配所有的空白符(空格回车换行)

  \S:匹配所有的非空白符;

  \w:匹配字母数字下划线;

  \W:匹配非字母数字下划线以外的字符。

  \b:匹配单词边界;

  \B:匹配非单词边界;

  ^:匹配开头;

  $:匹配结尾;

  ?:修饰前面的字符,表示最多出现1次;

  +:修饰前面的字符,表示最少出现1次;

  *:修饰前面的字符,表示可出现任意次;

  {n}:修饰前面的字符,表示出现n次;

  {n,}:表示至少出现n次;

  {n,m}:表示出现n至m次;默认为贪婪模式,尽可能的多匹配;

  {n,m?}:非贪婪模式,一旦匹配成功能不再向后匹配:

  ():分组,使量词作用于一组字符;$1:表示捕获到的分组的内容(反向引用);

  |:表示或的意思;例:Red|Blue匹配Red或者Blue; 例:bl(ue|ack)匹配blue或者black

  (?=\d):断言,修饰前面的字符,表示不仅要匹配前面的正则内容,还要匹配断言的内容;断言部分只验证,不进行计算;

正则表达式知识梳理