正则表达式

正则表达式

什么是正则表达式?

利用一些特殊符号的组合去字符串中筛选出符合条件的数据

字符组

ps: 特征是使用中括号括起来的 字符串默认只能单个单个字符匹配

[a-z] 匹配小写字母a到字母z其中任意一个字母

[A-Z] 匹配大写字母A到字母Z其中任意一个字母

[0123456789] 匹配0到9之间任何一个数字

[0-9] 这个是上面的简写

特殊符号

# 特殊符号默认也只能单个单个字符匹配
. 		匹配除换行符以外的任意字符
\d		匹配数字
\w              匹配包括下划线的任何单词字符,等价于 [A-Z a-z 0-9_]
^		匹配字符串的开始
$		匹配字符串的结尾
		"""^与$组合使用可以精准限制要查找的数据"""
a|b		匹配字符a或字符b
()		匹配括号内的表达式也表示一个组(不会影响正则表达式的匹配单纯的分组而已)
[...]	匹配字符组中的字符
[^...]	匹配除了字符组中字符的所有字符

量词

1.表达式在没有量词修饰的情况下 都是单个单个匹配
2.量词必须结合(字符组、特殊符号等)一起使用 不能单独出现
3.量词只能影响前面的一个表达式(ab+ 只能影响b)

*		重复零次或更多次
+		重复一次或更多次
?		重复零次或一次
{n}		重复n次
{n,}	重复n次或更多次
{n,m}	重复n到m次
"""
正则表达式中的量词默认都是'贪婪匹配'
"""

贪婪匹配与非贪婪匹配

默认都是贪婪匹配,在 .*后加上 ?就是惰性匹配

不加?号:

image

加?号:

image

特别注意

image

posted @ 2021-11-24 17:05  zong涵  阅读(9)  评论(0编辑  收藏  举报