Python正则表达式re.match和re.search

match(pattern, string, flags=0)

    从字符串的【起始】位置匹配
        匹配成功:返回一个匹配的对象
        匹配失败:返回None
flags:
    标志位,用于控制正则表达式的匹配方式
    如:是否区分大小写,多行匹配等等。
import re
text = "我爱Python"
pat1 = "[\u4e00-\u9fa5]+"  # 汉字
pat2 = "Python"
# re.match
r1 = re.match(pat1, text)
print(r1)
# span:跨度;范围
print(r1.span())
print(r1.group())

r2 = re.match(pat2, text)
# 不是起始位置,匹配失败
print(r2)

search(pattern, string, flags=0)

    扫描整个字符串并返回【第一个】成功的匹配。
        匹配成功:返回一个匹配的对象
        匹配失败:返回None
flags:
    标志位,用于控制正则表达式的匹配方式
    如:是否区分大小写,多行匹配等等。
import re
text = '我爱Python我爱python'
pat2 = 'Python'
# search
r2 = re.search(pat2, text)
print(r2)
# span:跨度;范围
print(r2.span())
# group
print(r2.group(), type(r2.group()))
'''
    <_sre.SRE_Match object; span=(2, 8), match='Python'>
    (2, 8)
    Python <class 'str'>
'''
# help(re.search)

猜你喜欢

转载自blog.csdn.net/yellow_python/article/details/80533204