欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python正则表达式的使用方法

程序员文章站 2022-05-11 08:15:00
...

python正则表达式的使用方法

python提供正则表达式的库。

import re

re库中提供的compile,match,search,split,findall是常用的方法。

compile

将正则表达式模式编译成一个正则表达式的对象,用于使用它去匹配match和search方法,使用这个函数的优点就是可以
在单个程序中可以重复的使用。

prog = re.compile(parrent)
result = prog.match(string)
# 相当于
result = re.match(pattern, string)

match

re.match(parrent, string, flag=0)

适用于在字符串的开头的零个或更多字符匹配正则表达式,将返回一个MatchObject的实例,如果没有匹配的字符串,则返回None。
match,只能匹配单行,如果需要匹配的字符串是多行的,也只匹配第一行。

import re

resouce = 'lee lee lee '
prog = re.compile(r'le+')

print type(prog)

result = prog.match(resouce)

print result.group()
'''output
<type '_sre.SRE_Pattern'>
<_sre.SRE_Match object at 0x000000000304A510>
lee
'''

search

re.search(pattern, string, flag=0)

扫描字符串,寻找第一个由正则表达式产生匹配的位置,返回一个MatchObject实例,返回None说明字符串中没有匹配的子串。

split

re.split(pattern, string, maxsplit=0, flag=0)

把字符串根据正则表达式进行拆分,放在一个list中。

import re

resouce = 'tee lee lee '
prog = re.compile(r'\W+')

print type(prog)

result = prog.split(resouce)

print result
'''output
<type '_sre.SRE_Pattern'>
['tee', 'lee', 'lee', '']
'''

findall

re.findall(pattern, string, flag=0)

从左向右的扫描,匹配按照发现的顺序返回到一个list中,空匹配则就返回一个空的list。

import re

resouce = 'tee lee lee '
prog = re.compile(r'le+')

print type(prog)

result = prog.findall(resouce)

print result
'''output
<type '_sre.SRE_Pattern'>
['lee', 'lee']
'''