Regular expressions

Here are a few most common examples:

#!/usr/bin/env python

import re
#
# search a substring in a string
#
pattern = "A.C."
string = "xxABCDxx"
matchobj = re.search( pattern, string)
if( matchobj):
    print( matchobj.start())                   # -> 2

#
# divide a string into groups
#
patt = re.compile( "A(\d*)B(\d*)C(\d*)")
res = patt.match( "A1B12C123")
print( res.group(1),res.group(2),res.group(3)) # -> 1 12 123

Metacharacters:

\ | ( ) [ { ^ $ * + ?

Pattern syntax:

 . any character but newline
 ^,$ start/end of line
 * zero or more occ. of the prec. char. or group
 + one or more occ. of the prec. char. or group
 ? zero or one occ. of prec. char. or group (ungreedy)
 [a-z] range fo chars, [abc] group of chars
 [^...] anything but range fo chars.
 \ escape character
 \t tab
 \n newline
 \\ backslash
 \b start or end of word
 \B next string not in word
 \< start of word
 \> end of word
 \d digit
 \D non-digit
 \s a whitespace character
 \S a non-whitespace character
 \w any word charcter
 \W any non-word character
 \| multiple patterns
 (...) group



Subsections