python正则(7)\1\d\s\w的用法

本节主要介绍\数字 \d \s \w的用法

\1 \数字的用法

核心用法:选定组(group)的指定次序元素
例如"(ab)(cd)(ef)\1"就是"(ab)(cd)(ef)(ab)"
例如"(ab)(cd)(ef)\2"就是"(ab)(cd)(ef)(cd)"
“(.+)\1”就是任意两组相同的元素
下面给出代码

import re
b = r"(abcabc)\1"
a = r"(a)(b)( c)\2"
match = re.match(a,‘abcbabcd’)
print(match)
print(match.group())

结果是:

<_sre.SRE_Match object; span=(0, 4), match=‘abcb’>
abcb

\d \s \w的用法

名字 作用
\d 匹配数字
\s 匹配空白字符(比较特殊见下)
\w 匹配a-z A-Z 0-9
\D\S\W 大写就和小写相反,例如\D就是匹配非数字的东西

/s的特点是根据编码方式不同也会有不同
对于Unicode(一般都是这个):匹配Unicode中的空白字符(包括[\t\n\v\f\r]以及其他空白字符);
如果开启了re.ASCII标志,就只匹配[\t\n\f\v\r] (真的不常见了感觉)

import re
a = r"\D+\d"
match1 = re.match(a,“a1998”)
match2 = re.match(a,“aaa1998”)
match3 = re.match(a,“1aaaaa”)
if match1:
print(“match1匹配成功”)
if match2:
print(“match2匹配成功”)
if match3:
print(“match3匹配成功”)

我们想要的就是匹配至少一个非数字加数字
所以结果是

match1匹配成功
match2匹配成功

猜你喜欢

转载自blog.csdn.net/weixin_43914889/article/details/88047709