(25 points)
Say you want to find a phone number in a string. You know the pattern: three numbers, a hyphen,
three numbers, a hyphen, and four numbers. Here's an example: 415-555-4242.
Let's use a function named isPhone Number() to check whether a string matches this pattern,
returning either True or False. Open a new file editor window and save the file as
isPhone Number.py.
Regular expressions, called regexes for short, are descriptions for a pattern of text. For example, a
\d in a regex stands for a digit character that is, any single numeral 0 to 9. The regex \d\d\d-\d\d\d-
\d\d\d\d is used by Python to match the text containing phone numbers in the isPhoneNumber()
function: a string of three numbers, a hyphen, three more numbers, another hyphen, and four
numbers. Any other string would not match the \d\d\d-\d\d\d-\d\d
\d\d regex. But regular expressions can be much more sophisticated. For example, adding a 3 in
curly brackets ({3}) after a pattern is like saying, "Match this pattern three times." So the slightly
shorter regex \d{3}-\d{3}-\d{4} also matches the correct phone number format.
All the regex functions in Python are in the re module. Enter the following into an interactive shell
to import this module:
>>> import re
A Regex object's search() method searches the string it is passed for any matches to the regex. The
search() method will return None if the regex pattern is not found in the string. If the pattern is
found, the search() method returns a Match object. Match objects have a group() method that will
return the actual matched text from the searched string.
Task: Use this information to write a python script to match phone numbers. Test your
program on a sample search string containing a phone number. If you are comfortable using
another language of your choice, please feel free to do so.
Fig: 1