【python】【内置模块】【六】【re】
11. re
| 变量/函数 | 含义 | 样例 |
| compile() | 编译正则表达式模式,返回一个对象的模式。 |
>>> a = re.compile('\d\d\d')
>>> str = '1234ttt'
>>> a.findall(str)
['123']
|
| match() | 匹配字符串,从字符串开始匹配,若失败返回空 |
>>> re.match('abC', 'abcAbc', re.I).group()
'abc'
|
| search() | 匹配字符串,直到匹配到符合pattern的字符串为止 |
>>> a = '123abc456'
>>> re.search('([0-9]*)([a-z]*)([0-9]*)',a).group()
'123abc456'
>>> re.search('([0-9]*)([a-z]*)([0-9]*)',a).group(0)
'123abc456'
>>> re.search('([0-9]*)([a-z]*)([0-9]*)',a).group(1)
'123'
>>> re.search('([0-9]*)([a-z]*)([0-9]*)',a).group(2)
'abc'
>>> re.search('([0-9]*)([a-z]*)([0-9]*)',a).group(3)
'456'
|
| findall() | 匹配字符串,匹配所有符合pattern的字符串 |
>>> a = re.compile('\d\d\d')
>>> str = '123456'
>>> a.findall(str)
['123', '456']
|
| finditer() | 匹配字符串,返回迭代器 |
>>> a = re.finditer('abc', 'abcabcabc')
>>> for iter in a:
... print iter.group()
...
abc
abc
abc
|
| split() | 对字符串进行分割,可以指定最大分割次数 |
>>> re.split('abc', 'abc1abc1abc')
['', '1', '1', '']
|
| sub() | 替换字符串 |
>>> re.sub('abc', 'xxx', 'abc123abc')
'xxx123xxx'
|
| subn() | 替换字符串,并返回替换次数 |
>> re.subn('abc', 'xxx', 'abc123abc')
('xxx123xxx', 2)
|

浙公网安备 33010602011771号