什么是正则表达式
- 正则表达式是一种文本模式,使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串
正则表达式用处
- 通过使用正则表达式 , 可以帮你匹配指定规则的字符串 , 它在计算机的用处比你想象的多的多 , 可以很大的提高效率
- 比如 我们平时用的编译器里的词法分析器 , 可以使用正则表达式匹配关键字
- 还有输入表单时 , 表单验证 , 用正则表达式代替for if 语句判断 , 很大的帮助我们提高效率 , 并且简化代码
- 总之就是很方便快捷用处很多
基本使用
我们可以用https://regex101.com/这个在线地址来进行正则测试
最简单的使用
-限定符
?
限定符
代表的意思是问号前面的那一个字符可有可无
把问号去掉被选出来的字符就是
*
限定符
代表的意思是*前面那一个字符可以出现0次或多次
+
限定符
代表的意思是+前面那一个字符可以存在1次或多次
{...(数字)}
限定符
代表的意思是
{num}
前面的那一个字符可以出现num次{num1,num2}
表示可以出现num1到num2次{num,}
表示可以出现num次以上
-或运算符
- (a|b)
匹配a或者b - (ab|cd)
匹配ab或cd
-字符类
[abc]
或者[a-c]
匹配a或者b或者c
[a-fA-F0-9]
匹配 a-fA-F0-9[^a-f]
匹配非 a-f
元字符
-
\d
匹配数字字符 -
\D
匹配非数字字符 -
\w
匹配单词字符(英文 , 数字 , 下划线) -
\W
匹配非英文字符 -
\s
匹配空白符 -
\S
匹配非空白符 -
.
匹配任意字符(换行符除外) -
\bword\b
\b
标注字符的尾边界
-
^
匹配行首 -
$
匹配行尾
贪婪/ 懒惰匹配
<.+>
默认贪婪匹配 “任意字符”<.+?>
懒惰匹配 “任意字符”