Question: In python with pyperclip Use the attached text and copy all of the text. hank.jones@myemail.com jaskson555@myemail herbie@email.com bob@castle.edu (252) 555 1212 252-555-1212 252 555-1212 252
In python with pyperclip
Use the attached text and copy all of the text.
hank.jones@myemail.com jaskson555@myemail herbie@email.com bob@castle.edu
(252) 555 1212 252-555-1212 252 555-1212 252 555 112 252.555.1212
Then create
phoneAndEmail2.py (copied from the first program) and modified so that it only finds phone numbers with space separators and emails with a .com ending.
-------------------------------------------------- modify the program below
#! python3 # phoneAndEmail.py - Finds phone numbers and email addresses on the clipboard.
import pyperclip, re
phoneRegex = re.compile(r'''( (\d{3}|\(\d{3}\))? # area code (\s|-|\.)? # separator (\d{3}) # first 3 digits (\s|-|\.) # separator (\d{4}) # last 4 digits (\s*(ext|x|ext.)\s*(\d{2,5}))? # extension )''', re.VERBOSE)
# Create email regex. emailRegex = re.compile(r'''( [a-zA-Z0-9._%+-]+ # username @ # @ symbol [a-zA-Z0-9.-]+ # domain name (\.[a-zA-Z]{2,4}){1,2} # dot-something )''', re.VERBOSE)
# Find matches in clipboard text. text = str(pyperclip.paste())
matches = [] for groups in phoneRegex.findall(text): phoneNum = '-'.join([groups[1], groups[3], groups[5]]) if groups[8] != '': phoneNum += ' x' + groups[8] matches.append(phoneNum) for groups in emailRegex.findall(text): matches.append(groups[0])
# Copy results to the clipboard. if len(matches) > 0: pyperclip.copy(' '.join(matches)) print('Copied to clipboard:') print(' '.join(matches)) else: print('No phone numbers or email addresses found.')
----------------------------------------------------------------------
make the following modifications to the expressions. Put them both in a file: Ch07Ex.txt
21. Allow for a middle name also
22. Add a fourth word with 5 choices of yours.
Expressions :
21. re.compile(r'[A-Z][a-z]*\sNakamoto')
22. re.compile(r'(Alice|Bob|Carol)\s(eats|pets|throws)\s(apples|cats |baseballs)\.', re.IGNORECASE)
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
