Python-正则
一:字符组
使用[],表示同一个位置可以匹配的字符
[0-9] :可以匹配到数字(同一位置)
[a-z]:可以匹配小写字母
[A-Z]:可以匹配大写字母
[A-Za-z0-9] 可以匹配大小写字母和数字
二:元字符
. 可以匹配出了换行符以外的任意字符
\w 可以匹配数字,字母和下划线
\s 可以匹配任意空白符
\d 可以匹配数字
\n 可以匹配换行符
\t 可以匹配制表符
^ 匹配字符串的开始
$ 匹配字符串的结尾
\W 与\w相反,匹配非数字,字母,下划线
\D 与\d相反,匹配非数字
\S 与\s相反,匹配非空白符
a|b 匹配a或b
() 匹配括号内的表达式,也表示一个组 对多个字符组整体约束。
[...] 匹配字符组里的字符
[^....] 匹配非字符组里的字符
| 从左到右匹配,左边匹配到了,右边就不匹配了,将长的放左边。
、三:量词
* 重复0次或更多次 {0,}
+ 重复一次或更多次 {1,}
?重复0次或1次 {1,0}
{n} 重复n次 {n}
{n,} 重复n次,或更多次
{n,m}重复n次到m次
转义:
如果待匹配的字符串里有特殊字符,在正则和字符串的前面加r
如果特殊字符在字符组里,就是匹配的特殊字符,但是为了好记,所有特殊字符在匹配的时候都转义。
贪心和惰性匹配
在量词后加?就可以惰性匹配 .*?x
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步