一、常用表达式说明
[] 表示范围 如:[0-9a-z] 匹配所有数字及小写字母,[\u4E00-\u9FA5] 匹配中文字符
^ 开始符号如:^1 表示以1开始
$ 结尾符号如:^19$表示以1开始以9结尾
\d 表示数字同[0-9]
[\u4e00-\u9fa5] 匹配中文
\w 匹配字母、数字、下划线
. 匹配除换行符外的所有字符
\n 匹配换行符
{} 表示前面的表达式匹配个数区间如:\d{1,} 匹配1位或者多位数字
* 表示前面的表达式匹配0次或无数次等同于 {0,}
+ 表示前面的表达式匹配1次或无数次等同于 {1,}
? 表示前面的表达式匹配0次或1次等同于 {0,1}
() 括号内为子表达式,且子表达式内匹配到的值也会返回
| 表示或者
[^] 表示范围区间之外,如[^ab]表示不等于a或者b
? 问号在前面表示匹配但不取值 :
industr(?:y|ies) 匹配 industry|industries ,industr(y|ies) 匹配 industry|industries
Windows(?=95|98|NT|2000) 匹配 Windows2000 但不匹配 Windows3.1
(?<=95|98|NT|2000)Windows 匹配 2000Windows 但不匹配 3.1Windows
Windows(?=!95|98|NT|2000) 匹配 Windows3.1 但不匹配 Windows2000
二、修饰符
i ignore - 不区分大小写
g global - 全局匹配
m multi line - 多行匹配
s 和.一起使用.\s表示匹配包含换行符的所有字符
在线调试地址:regex101: build, test, and debug regex