目录
正则表达式在线测试工具:https://regex101.com/
正则表达式:通配符的增强版,匹配指定规则的字符串
限定符:
? 表示前面的一个字符,出现0次或者1次
* 匹配0个或者多个字符
+ 陪出现1次以上的字符
指定更精确的匹配次数 { ... }
{ 6 } 匹配6次
{ 2,6 } 匹配2~6次
{ 2, } 表示出现两次以上
将需要限定的字符用括号括起来
(ab)+ 表示ab 出1次以上
a (cat|dog) 匹配a空格cat或者a空格dog,括号必不可少,否则变成匹配a cat 或者 dog
[] 里面所得字符都是或的关系
匹配由abc字母组成的单词:[abc]+
[a-z0-9A-Z]+ 所有字符
^ 脱字符:[^0-9]+ 出来数字之外的所有字符
\d \w \s \D \W \S
数字:\d
单词字符: \w 代表所有的英文字符,数字,下划线
空白符:\s 同时包含tab(制表符)以及换行符
非数字字符:\D
非单词字符:\W
非空白字符:\S
任意字符: . 但是不包含换行符
^ 匹配行首,$ 匹配行尾
单词开头,结尾:
加?将贪婪匹配切换为懒惰匹配:
默认为贪婪匹配(尽可能多的匹配):

切换懒惰匹配:

匹配16进制的RGB颜色值:#[a-fA-F0-9]{6}\b
\b 代表单词字符的边界:避免不符合要求的也被匹配

不加\b :

匹配IPv4 地址:\b((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)\b
总结:
