import re

RegEx Functions

FunctionDescription
findallReturns a list containing all matches. Usage: x = re.findall(“search”, txt)
searchReturns a Match object if there is a match anywhere in the string Usage: x = re.search(“search”, txt)
splitReturns a list where the string has been split at each match Usage: x = re.split(“search”, txt)
subReplaces one or many matches with a string Usage: x = re.sub(“search”, “replace”, txt)

Metacharacters

CharacterDescriptionExample
[]A set of characters“[a-m]”
\Signals a special sequence (can also be used to escape special characters)“\d”
.Any character (except newline character)“he..o”
^Starts with“^hello”
$Ends with“planet$”
*Zero or more occurrences“he.*o”
+One or more occurrences“he.+o”
?Zero or one occurrences“he.?o”
{}Exactly the specified number of occurrences“he.{2}o”
|Either or“falls|stays”
()Capture and group 

Special Sequences

CharacterDescriptionExample
\AReturns a match if the specified characters are at the beginning of the string“\AThe”
\bReturns a match where the specified characters are at the beginning or at the end of a word
(the “r” in the beginning is making sure that the string is being treated as a “raw string”)
r”\bain”
r”ain\b”
\BReturns a match where the specified characters are present, but NOT at the beginning (or at the end) of a word
(the “r” in the beginning is making sure that the string is being treated as a “raw string”)
r”\Bain”
r”ain\B”
\dReturns a match where the string contains digits (numbers from 0-9)“\d”
\DReturns a match where the string DOES NOT contain digits“\D”
\sReturns a match where the string contains a white space character“\s”
\SReturns a match where the string DOES NOT contain a white space character“\S”
\wReturns a match where the string contains any word characters (characters from a to Z, digits from 0-9, and the underscore _ character)“\w”
\WReturns a match where the string DOES NOT contain any word characters“\W”
\ZReturns a match if the specified characters are at the end of the string“Spain\Z”

Sets

SetDescription
[arn]Returns a match where one of the specified characters (a, r, or n) is present
[a-n]Returns a match for any lower case character, alphabetically between a and n
[^arn]Returns a match for any character EXCEPT a, r, and n
[0123]Returns a match where any of the specified digits (0, 1, 2, or 3) are present
[0-9]Returns a match for any digit between 0 and 9
[0-5][0-9]Returns a match for any two-digit numbers from 00 and 59
[a-zA-Z]Returns a match for any character alphabetically between a and z, lower case OR upper case
[+]In sets, +, *, ., |, (), $,{} has no special meaning, so [+] means: return a match for any + character in the string

Match Object

A Match Object is an object containing information about the search and the result. If there is no match, the value None will be returned, instead of the Match Object.

.span() returns a tuple containing the start-, and end positions of the match.
.string returns the string passed into the function
.group() returns the part of the string where there was a match
.start() returns the first match position
.end() returns the last match position

Leave a Reply

Your email address will not be published. Required fields are marked *