Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Regular Expression Examples in Python



Literal characters

Sr.No. Example & Description
1 python
Matches beginning of line.

Character classes

Sr.No. Example & Description
1 [Pp]ython
Match "Python" or "python"
2 rub[ye]
Match "ruby" or "rube"
3 [aeiou]
Match any one lowercase vowel
4 [0-9]
Match any digit; same as [0123456789]
5 [a-z]
Match any lowercase ASCII letter
6 [A-Z]
Match any uppercase ASCII letter
7 [a-zA-Z0-9]
Match any of the above
8 [^aeiou]
Match anything other than a lowercase vowel
9 [^0-9]
Match anything other than a digit

Special Character Classes

Sr.No. Example & Description
1 .
Match any character except newline
2 \d
Match a digit: [0-9]
3 \D
Match a nondigit: [^0-9]
4 \s
Match a whitespace character: [ \t\r\n\f]
5 \S
Match nonwhitespace: [^ \t\r\n\f]
6 \w
Match a single word character: [A-Za-z0-9_]
7 \W
Match a nonword character: [^A-Za-z0-9_]

Repetition Cases

Sr.No. Example & Description
1 ruby?
Match "rub" or "ruby": the y is optional
2 ruby*
Match "rub" plus 0 or more ys
3 ruby+
Match "rub" plus 1 or more ys
4 \d{3}
Match exactly 3 digits
5 \d{3,}
Match 3 or more digits
6 \d{3,5}
Match 3, 4, or 5 digits

Nongreedy repetition

This matches the smallest number of repetitions −

Sr.No. Example & Description
1 <.*>
Greedy repetition: matches "<python>perl>"
2 <.*?>
Nongreedy: matches "<python>" in "<python>perl>"

Grouping with Parentheses

Sr.No. Example & Description
1 \D\d+
No group: + repeats \d
2 (\D\d)+
Grouped: + repeats \D\d pair
3 ([Pp]ython(, )?)+
Match "Python", "Python, python, python", etc.

Backreferences

This matches a previously matched group again −

Sr.No. Example & Description
1 ([Pp])ython&\1ails
Match python&pails or Python&Pails
2 (['"])[^\1]*\1
Single or double-quoted string. \1 matches whatever the 1st group matched. \2 matches whatever the 2nd group matched, etc.

Alternatives

Sr.No. Example & Description
1 python|perl
Match "python" or "perl"
2 rub(y|le))
Match "ruby" or "ruble"
3 Python(!+|\?)
"Python" followed by one or more ! or one ?

Anchors

This needs to specify match position.

Sr.No. Example & Description
1 ^Python
Match "Python" at the start of a string or internal line
2 Python$
Match "Python" at the end of a string or line
3 \APython
Match "Python" at the start of a string
4 Python\Z
Match "Python" at the end of a string
5 \bPython\b
Match "Python" at a word boundary
6 \brub\B
\B is nonword boundary: match "rub" in "rube" and "ruby" but not alone
7 Python(?=!)
Match "Python", if followed by an exclamation point.
8 Python(?!!)
Match "Python", if not followed by an exclamation point.
Updated on: 2020-01-31T07:51:02+05:30

313 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements