re
moduleThe re
module is part of the standard library of Python. The re
module allows for the use of
re.search()
re.match()
re.split()
re.findall()
Each function carries out a special operation on the regular expression provided as a parameter.
re.match()
functionWhen provided with a regular expression, the re.match()
function checks the string to be matched for a pattern in the
This function only checks for a match at the beginning of the string. This means that re.match()
will return the match found in the first line of the string, but not those found in any other line, in which case it will return null
.
re.match(pattern, string, flags)
pattern
: The regular expression.string
: The string to be checked for a match.flags
: Some regular expression options, such as:
re.I
: For a case insensitive search.re.L
: Causes words to be interpreted according to the current locale.re.S
: Performs a period (dot) match at any character, including a new line.re.U
: Interprets letters according to the Unicode character set. How \w, \W, \b, and \B behave are usually affected.In the code example below, we use the re.match
function to find a match in the pattern pattern
from the list listString
.
The expressions w+
and \W
will match the words starting with the letter g
. If there is any string in listString
that does not start with g
, it won’t be recognized.
We use the for
loop to check all string groups in the list for a match with the pattern.
If there is a match found, the groups()
method will return each of the match set as a list
, while the group()
method will return the matched set of strings as a single string.
The
listString
list element"string dope"
doesn’t match because the second stringdope
fails to match the pattern.
# importing the re moduleimport re# string to be match save in a dictionary.listString = ["string stay", "stringers sit","string dope"]# loop through the dictionary and check for matchpattern = "(s\w+)\W(s\w+)"for string in listString:match = re.match(pattern, string)if match:# matched groups are printed as a separate listprint(match.groups())# matched groups are each printed as a single stringprint(match.group())print("***************")