快速入门
import re pattern = \'this\' text = \'Does this text match the pattern?\' match = re.search(pattern, text) s = match.start() e = match.end() print(\'Found \"{0}\"\\nin \"{1}\"\'.format(match.re.pattern, match.string)) print(\'from {0} to {1} (\"{2}\")\'.format( s, e, text[s:e]))
执行结果:
#python re_simple_match.py Found \"this\" in \"Does this text match the pattern?\" from 5 to 9 (\"this\") import re # Precompile the patterns regexes = [ re.compile(p) for p in (\'this\', \'that\')] text = \'Does this text match the pattern?\' print(\'Text: {0}\\n\'.format(text)) for regex in regexes: if regex.search(text): result = \'match!\' else: result = \'no match!\' print(\'Seeking \"{0}\" -> {1}\'.format(regex.pattern, result))
执行结果:
#python re_simple_compiled.py Text: Does this text match the pattern? Seeking \"this\" -> match! Seeking \"that\" -> no match! import re text = \'abbaaabbbbaaaaa\' pattern = \'ab\' for match in re.findall(pattern, text): print(\'Found \"{0}\"\'.format(match))
执行结果:
#python re_findall.py Found \"ab\" Found \"ab\" import re text = \'abbaaabbbbaaaaa\' pattern = \'ab\' for match in re.finditer(pattern, text): s = match.start() e = match.end() print(\'Found \"{0}\" at {1}:{2}\'.format(text[s:e], s, e))
执行结果:
#python re_finditer.py Found \"ab\" at 0:2 Found \"ab\" at 5:7