專案3 電話號碼和 E mail 位址提取程式

2021-09-22 20:08:38 字數 1772 閱讀 9135

#! python3

# phoneandemail.py - finds phone numbers and email addresses on the clipboard.

import pyperclip, re

# 建立**的正規表示式

phoneregex = re.

compile

(r'''(

(\d|\(\d\))? # 區號可選,444或(444)

(\s|-|\.)? # 分隔符:字元或-或. 可選

(\d) # 三個數字

(\s|-|\.)? # 分隔符:字元或-或. 可選

(\d) # 四個數字

(\s*(ext|x|ext.)\s*(\d))? # extension

)'''

,re.verbose)

# 建立email的正規表示式

emailregex = re.

compile

(r'''(

[a-za-z0-9._%+-]+ # username

@ # @ symbol

[a-za-z0-9.-]+ # domain name

(\.[a-za-z]) # dot-something

)'''

, re.verbose)

# 匹配剪下板的文字

text =

str(pyperclip.paste())

#pyperclip.paste()函式從剪貼簿上的文字獲取乙個字串

matches =

for groups in phoneregex.findall(text)

: phonenum =

'-'.join(

[groups[1]

, groups[3]

, groups[5]

])#findall()返回元組列表,形如:[('415','555','9999'),('212','555','0000')]

if groups[8]

!=''

: phonenum +=

' x'

+ groups[8]

#不知道這個groups[8]是什麼鬼

for groups in emailregex.findall(text):0

])# 把處理好的文字複製到剪下板

iflen

(matches)

>0:

pyperclip.copy(

'\n'

.join(matches)

)print

('copied to clipboard:'

)print

('\n'

.join(matches)

)else

:print

('no phone numbers or email addresses found.'

)

groups變數長這樣:

(『800.420.7240』, 『800』, 『.』, 『420』, 『.』, 『7240』)

(『415.863.9900』, 『415』, 『.』, 『863』, 『.』, 『9900』)

(『415.863.9950』, 『415』, 『.』, 『863』, 『.』, 『9950』)

所以groups[0]返回的是整體文字

python3實現電話號碼組合

問題 號碼對應的字元組合 在 或者手機上,乙個數字如2對應著字母abc,7對應著pqrs。那麼數字串27所對應的字元的可能組合就有3 4 12種 如ap,br等 現在輸入乙個3到11位長的 號碼,請列印出這個 號碼所對應的字元的所有可能組合和組合數。對映關係 phone dict defphone ...

UITextField格式化電話號碼和銀行卡

bool textfield uitextfield textfield shouldchangecharactersinrange nsrange range replacementstring nsstring string text text stringbyreplacingcharacte...

jquery驗證手機號碼和固定電話號碼

驗證手機號碼或者 號碼 function checkcontactnumber 15 0 9 18 0 9 17 0 9 14 0 9 d var isphone 0 d d d var error 請正確填寫 號碼,例如 13511111111或010 11111111 如果為1開頭則驗證手機號碼...