代码
#! python3# phoneAndEmail.py - Finds phone numbers and email addresses on Clipboardimport pyperclipimport rephoneRegex = pile(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)# TODO: Create email regex.emailRegex = pile(r'''([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+(\.[a-zA-Z]{2,4}))''', re.VERBOSE)# TODO: Find matches in Clipboard text.text = str(pyperclip.paste())matches = []for groups in phoneRegex.findall(text):# print(groups)phoneNum = '-'.join([groups[1], groups[3], groups[5]])if groups[8] != '':phoneNum += ' x' + groups[8]matches.append(phoneNum)for groups in emailRegex.findall(text):# print(groups)matches.append(groups[0])# TODO: Copy results to the Clipboard.if len(matches) > 0:pyperclip.copy('\n'.join(matches))print('Copied to clipboard:')print('\n'.join(matches))else:print('No phone number or email address found.')
复制以下文本后运行程序
Contact Us
No Starch Press, Inc.
245 8th Street
San Francisco, CA 94103 USA
Phone: 800.420.7240 or +1 415.863.9900 (9 a.m. to 5 p.m., M-F, PST)
Fax: +1 415.863.9950
Reach Us by Email
General inquiries: info@
Media requests: media@
Academic requests: academic@ (Please see this page for academic review requests)
Help with your order: info@
Reach Us on Social Media