Thinking
~从剪贴板取得文本
~找出文本中所有的电话号码和E-mail 地址
~将他们粘贴到剪贴板
~使用pyperclip模块复制和粘贴字符串。
~创建两个人正则表达式,一个匹配电话号码,另一个匹配E-mail 地址
~对两个正则表达式,找到所有的匹配,而不是只是第一次匹配
~将匹配的字符串整理好格式,放在一个字符串中,用于粘贴
~如果文本中没有找到匹配,显示某种消息
第一步:为电话号码创建一个正则表达式
import pyperclip,rephoneRegex = re.compile(r\'\'\'((\\d{3}|\\(\\d{3}\\))? #区号(020) 020(\\s|-|\\.)? #间隔符 空格 - .(\\d{4})(\\s|-|\\.)(\\d{4})#(\\s*(ext|x|ext\\.)\\s*(\\d{2-5}))?)#re.VERBOSE 忽略掉字符串中的注释\'\'\',re.VERBOSE)#区号(020) 020#间隔符 空格 - .#接下来是三个数字,然后间隔符,接下来是4个数字。最后的部分是可选的分机号,包括任意数目的空格,接着ext x ext. 再接着是2-5位数字
第二步:为E-mail地址创建一个正则表达式
import pyperclip,rePhoneRegex = re.compile(r\"\"\"(([a-zA-Z0-9._%+-])+ #username(@) # @sample([a-zA-Z0-9.-])+ #domin name(\\.[a-zA-Z]){2-4} #dot-something)\"\"\",re.VERBOSE)
第三步 可以爬取一段页面来利用正则表达式进行筛选
可查后期爬虫知识
mos = phoneRegex.findall(str)
print(mos)
爬取的文本为str