10.用法1的正则表达式对象版本
(use regex object for if/else branch whether (part of) a string can be matched) reobj = re.compile(regex) if reobj.search(subject): do_something() else: do_anotherthing()
11.用法2的正则表达式对象版本
(use regex object for if/else branch whether a string can be matched entirely) reobj = re.compile(r"Z") #正则表达式末尾以Z 结束 if reobj.match(subject): do_something() else: do_anotherthing()
12.创建一个正则表达式对象,然后通过该对象获得匹配细节
(Create an object with details about how the regex object matches (part of) a string) reobj = re.compile(regex) match = reobj.search(subject) if match: # match start: match.start() # match end (exclusive): match.end() # matched text: match.group() do_something() else: do_anotherthing()
13.用正则表达式对象获取匹配子串
(Use regex object to get the part of a string matched by the regex) reobj = re.compile(regex) match = reobj.search(subject) if match: result = match.group() else: result = ""
14.用正则表达式对象获取捕获组所匹配的子串
(Use regex object to get the part of a string matched by a capturing group) reobj = re.compile(regex) match = reobj.search(subject) if match: result = match.group(1) else: result = ""
15.用正则表达式对象获取有名组所匹配的子串
(Use regex object to get the part of a string matched by a named group)
reobj = re.compile(regex)
match = reobj.search(subject)
if match:
result = match.group("groupname")
else:
result = ""
16.用正则表达式对象获取所有匹配子串并放入数组
(Use regex object to get an array of all regex matches in a string) reobj = re.compile(regex) result = reobj.findall(subject)
17.通过正则表达式对象遍历所有匹配子串
(Use regex object to iterate over all matches in a string) reobj = re.compile(regex) for match in reobj.finditer(subject): # match start: match.start() # match end (exclusive): match.end() # matched text: match.group()
感兴趣的读者可以动手调试一下本文实例代码,相信会有新的收获。










