import re a = '娜扎热巴佟丽娅' result1 = re.match('佟丽娅',a) #match匹配开头是否符合 print(result1) result2 = re.search('佟丽娅',a) #search查找字符串里是否有 print(result2) print(result2.span()) #返回匹配位置 print(result2.group()) #返回匹配的内容 b = 'as2dasf23afgg5gfa6g4646gds' bb = re.findall('as',b) #findall查找字符串中是否有,把所有匹配到的以列表形式返回 print(bb) cc = re.findall('[a-z][0-9]+[a-z]',b) print(cc) qq = '1321653505' dd = re.findall('^[1-9][0-9]{4,11}$',qq) print(dd) phone = '020-118114' ee = re.match(r'(\d{3,4})-(\d{5,11})$',phone) #()就表示组 print(ee) print(ee.group(1)) #group(1)表示第一个() print(ee.group(2)) pa = '<html><h1>aaaaa</h1></html>' ff = re.match(r'<(\w+)><(\w+)>(.+)</\2></\1>$',pa) #\1表示与前面第一个()内容一样,\2同理 print(ff) print(ff.group(3)) gg = re.match(r'<(?P<name1>\w+)><(?P<name2>\w+)>(.+)</(?P=name2)></(?P=name1)>',pa) print(gg) print(gg.group(2)) print(gg.group(3)) x = '123a 123a 456s 64f' hh = re.split(r'[\s]',x) #分割字符串,\s表示空格 print(hh) ii = re.sub(r'123[a-z]','instead',x) #替换字符串中123a print(ii)
输出结果
None <re.Match object; span=(4, 7), match='佟丽娅'> (4, 7) 佟丽娅 ['as', 'as'] ['s2d', 'f23a', 'g5g', 'a6g'] ['1321653505'] <re.Match object; span=(0, 10), match='020-118114'> 020 118114 <re.Match object; span=(0, 27), match='<html><h1>aaaaa</h1></html>'> aaaaa <re.Match object; span=(0, 27), match='<html><h1>aaaaa</h1></html>'> h1 aaaaa ['123a', '123a', '456s', '64f'] instead instead 456s 64f