说起re模块,不由得要说起正则表达式,下面介绍一下re 模块内match()函数的使用。

       

        re.match():尝试从字符串的起始位置匹配一个规则,匹配成功就返回match对象,否则返回None。可以使用group()获取匹配成功的字符串。

        语法:

re.match(pattern,string,flags=0)

        参数说明:  pattern:匹配的正则表达式

         string:要匹配的字符串

         flags:标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。

                  下面进行代码的实例化:

import re
data = 'Python is the best language in the world'
result = re.search('P',data) #精确匹配
print(type(result))  #返回<class 're.Match'>
print(result.group())
group()函数:可以获取匹配的数据 如果有多个匹配结果的话 那么会以元组的形式 存放到group对象中。数据也可以通过下标来获取。

                  关于该函数的另一个实例化:

strData = 'Python is the best in the world'
# match 只能匹配以xxx开头的字符串,第一个参数是正则,第二个参数是需要匹配的字符串
# res = re.match('python',strData,re.I|re.M)  #第三个参数 I 表示忽略大小写
res = re.match('(.*) is (.*?) .*',strData,re.I|re.M)
if res:
    print('匹配成功...')
    print(res)
    print(res.groups())
    print(res.group(1))
    print(res.group(2))
else:
    print(res.group()) #如果匹配失败,是没有group函数 因为是一个空对象None
    print(res)
    print('匹配失败...')
在这里我们使用了一个for循环,用来更加生动地表现出匹配是否成功!