str_1 = r"adjkladfhiasas\[emailprotected]" a = re.match("com", str_1) # 从字符串起始位置匹配。 找不到,返回None 匹配一次 print(a) # None b = re.search("com", str_1) # re.search匹配整个字符串,直到找到一个匹
str_1 = r"adjkladfhiasas\[email protected]"
a = re.match("com", str_1) # 从字符串起始位置匹配。 找不到,返回None 匹配一次
print(a)
# None
b = re.search("com", str_1) # re.search匹配整个字符串,直到找到一个匹配
# 找不到,返回None 匹配一次
print(b)
# <re.Match object; span=(33, 36), match=‘com‘>
c = re.findall("com", str_1) # 字符串中找到正则表达式所匹配的所有子串,
# 并返回一个列表,如果没有找到匹配的,则返回空列表
print(c)
# [‘com‘, ‘com‘]
d = re.findall("\\\\", str_1) # re模块中 \特殊字符,需要使用转义字符\
# python 解释器解释, \为特殊字符,需要使用转义字符\进行转义
print(d)
# [‘\\‘]
e = re.search(r"\\", str_1) # r 表示后面的字符为python中的原生字符
print(e)
# <re.Match object; span=(14, 15), match=‘\\‘>
f = re.search(r"\bcom", str_1) # \b在python中指退格
# \b在re模块中指单词的边界,所以使用r
print(f)
# <re.Match object; span=(33, 36), match=‘com‘>
# () 做分组
print(re.search("(as)+", str_1))
# <re.Match object; span=(10, 14), match=‘asas‘>
print(re.search("(as)+", str_1).group()) # 贪婪匹配
# asas
str_2 = "asdfaas3"
print(re.search("(as)|3", "asdd893").group()) # | 或
# as
print(re.search("(as)|3", "afsdd893").group())
# 3
print(re.search("(?P<id>\d{3})/(?P<name>\w{3})", "ieuriwruiw234/yui").group())# 234/yuiprint(re.search("(?P<id>\d{3})/(?P<name>\w{3})", "ieuriwruiw234/yui").group("id"))# 234print(re.search("(?P<id>\d{3})/(?P<name>\w{3})", "ieuriwruiw234/yui").group("name"))# yui