python:正则
re模块:
常见办法:
compile()
search()
findall()
finditer()
sub()
split()
match("需要匹配的规则",文本字符串) #表示 从头匹配
正则表达式:
元字符:
· # (点)匹配任意符号,除换行符(n)之外
w #匹配有效符号(大小写字母,数字,下划线_,各国语言符号(python3))
d # 匹配数字0-9
s # 匹配空白位(t,空格,n)
[ abcd] # 该位置必须是abcd中的某一个来占位,列举
匹配数字:[0123456789]、[0-9]
匹配字母:[a-z]、[A-Z]
有效符号:[a-zA-Z0-9_]——字母数字下划线
.*表示从0到多位。(后面重复有)
^ #以什么开头的字符串
$ #以什么结尾
反义符:
W #匹配特殊符号% 等
D #匹配非数字
S #匹配非空白位
[^abcd] #表示该范围内不能有符号abcd
^[abcd] #表示必须以abcd开头
转义符:
在绝大多数的编程语言中,字符串操作都是存在转义符。如windows系统中文件路径用\
在正则中也存在转义
注意:在python中,如果出现路径等情况,建议使用r"regexp",这种方式,减少转义符多次转义!!
推荐:所有的正则表达式前面,都建议加上r!!!!!(及时没有转义符,加上也没事)
重复(位数):
* #任意位(0到多位)
+ #1到多位()
? #表示0或者1,也就是说;可以有,也可以没有,但是要有的话,只能是一位
(m) #表示m位,m位正整数
(m,) #表示至少m位,也可以更多
(m,n) #表示范围区间[m,n]