Character | Matches |
---|---|
a | a character |
. | Any character (except newline) |
\. | . character |
\\ | \ character |
\* | * character |
Matches | Description | |
---|---|---|
[abcd] | Any one of the letters a through d | Set of characters |
[^abcd] | Any character but a, b, c, or d | Complement of a set of characters |
[a-d] | Any one of the letters a through d | Range of characters |
[a-dz] | Any of a, b, c, d, or z | Range of characters |
Type | Expression | Equivalent To | Description |
---|---|---|---|
Word Character | \w | [a-zA-Z0-9_] | Alphanumeric or underscore |
Non-word Character | \W | [^a-zA-Z0-9_] | Anything but a word character |
Digit Character | \d | [0-9] | Numeric |
Non-digit Character | \D | [^0-9] | Non-numeric |
Whitespace Character | \s | [ \t\n\r\f\v] | Whitespace |
Non-whitespace Character | \S | [^ \t\n\r\f\v] | Anything but a whitespace character |
Anchor | Matches |
---|---|
^ | Start of the string |
$ | End of the string |
\b | Boundary between word and non-word characters |
Group Type | Expression |
---|---|
Capturing | ( ... ) |
Non-capturing | (?: ... ) |
Quantifier | Modification |
---|---|
{5} | Match expression exactly 5 times |
{2,5} | Match expression 2 to 5 times |
{2,} | Match expression 2 or more times |
{,5} | Match expression 0 to 5 times |
* | Match expression 0 or more times |
{,} | Match expression 0 or more times |
? | Match expression 0 or 1 times |
{0,1} | Match expression 0 or 1 times |
+ | Match expression 1 or more times |
{1,} | Match expression 1 or more times |
Quantifier | Modification |
---|---|
{2,5}? | Match 2 to 5 times (less preferred) |
{2,}? | Match 2 or more times (less preferred) |
{,5}? | Match 0 to 5 times (less preferred) |
*? | Match 0 or more times (less preferred) |
{,}? | Match 0 or more times (less preferred) |
?? | Match 0 or 1 times (less preferred) |
{0,1}? | Match 0 or 1 times (less preferred) |
+? | Match 1 or more times (less preferred) |
{1,}? | Match 1 or more times (less preferred) |
Quantifier | Modification |
---|---|
ABC|DEF | Match string ABC or string DEF |
Quantifier | Modification |
---|---|
(?=abc) | Zero-width match confirming abc will match upcoming chars |
(?!abc) | Zero-width match confirming abc will not match upcoming chars |
Function | Purpose | Usage |
---|---|---|
re.search | Return a match object if pattern found in string | re.search(r'[pat]tern', 'string') |
re.finditer | Return an iterable of match objects (one for each match) | re.finditer(r'[pat]tern', 'string') |
re.findall | Return a list of all matched strings (different when capture groups) | re.findall(r'[pat]tern', 'string') |
re.split | Split string by regex delimeter & return string list | re.split(r'[ -]', 'st-ri ng') |
re.compile | Compile a regular expression pattern for later use | re.compile(r'[pat]tern') |
Flag | Description |
---|---|
re.IGNORECASE | Match uppercase and lowercase characters interchangeably |
re.VERBOSE | Ignore whitespace characters and allow # comments |