正则表达式:regex
所有的正则表达式都在re模块中:
'\d' 任意数字[0`9]---后面跟大括号里面包含数字,表示重复几次:\d{3} ==\d\d\d,
向re.compile()传入字符串值,返回一个正则表达式对象,可以赋予一个变量。这个对象有个search方法:
text = '3good 654'
regular = re.compile('\d\d\d')
match = regular.search(text) #text里可以匹配,返回一个match对象,否则返回NONE
match对象有个group方法,返回的是个字符串?
>>>print(match.group())
>>>654
貌似很拗口......>>>>>>re.compile(正则表达式串).search(被查找文本).group() #返回了第一个符合表达式的字符串
import re
text = 'my telephone num is 010-110'
regular = re.compile(r'\d\d\d-\d{3}')
mo = regular.search(text)
print('The num is:',mo.group())
>>>The num is: 010-110
'\n' 换行
在正则表达式中添加括号,实际上就是在group方法中添加分组:group(0)返回整个查找到的文本。group(1)返回第一个分组,group(2)返回第二个分组,以此类推。
import re
text = 'my telephone num is 010-110'
regular = re.compile(r'(\d\d\d)-(\d{3})')
mo = regular.search(text)
print("First group is",mo.group(1))
print("Second group is",mo.group(2))
>>>
First group is 010
Second group is 110
一次获得所有分组用mo.groups()方法,返回一个元组