python正则表达式--《Core Python Applications Programm...

一、正则表达式的编译--compile()

    将表达式编译成正则表达的对象,虽然编译不是必要的。但是还是推介编译一下,编译了你使用的方法(对象),如果没编译,则使用的是函数。但是不管是函数还是方法,他们的名称都是一样的。如果一个表达式频繁的出现,那么最好还是编译一下。

二、Match Objects group和groups的区别

    group()返回整个匹配的元素或者是一个特殊的组。而group返回一个subgroup的一个元组。

>>> m = re.match('ab', 'ab')
>>> m.group()
'ab'
>>> m.groups()
()
>>>
>>> m = re.match('(ab)', 'ab')
>>> m.group()
'ab'
>>> m.group(1)
'ab'
>>> m.groups()
('ab',)
>>>
>>> m = re.match('(a)(b)', 'ab')
>>> m.group()
'ab'
>>> m.group(1)
'a'
>>> m.group(2)
'b'
>>> m.groups()
('a', 'b')
>>>
>>> m = re.match('(a(b))', 'ab')
>>> m.group()
'ab'
>>> m.group(1)
'ab'
>>> m.group(2)
'b'
>>> m.groups()
('ab', 'b')

你可能感兴趣的:(python正则表达式--《Core Python Applications Programm...)