您好,登錄后才能下訂單哦!
正則表達式,又稱正規表示式、正規表示法、正規表達式、規則表達式、常規表示法(英語:Regular Expression,在代碼中常簡寫為regex、regexp或RE),是計算機科學的一個概念。正則表達式使用單個字符串來描述、匹配一系列匹配某個句法規則的字符串。在很多文本編輯器里,正則表達式通常被用來檢索、替換那些匹配某個模式的文本。
# 需求
# 定義一個函數,用于判斷輸入的手機號是否合法
# 并判斷它的運營商
# 思路步驟:
# 1.首先了解三大運營商的號段分布
# 2.獲取用戶輸入內容
# 3.判斷輸入是否是一個手機號
# 4.如果手機號合法,判斷該手機號段的運營商
# 5.輸出
import re
def phone(): n = input("請輸入一個手機號:") if re.match(r'1[3,4,5,7,8]\d{9}',n): print("您輸入的的手機號碼是:\n",n) #中國聯通: # 130,131,132,155,156,185,186,145,176 if re.match(r'13[0,1,2]\d{8}',n) or \ re.match(r"15[5,6]\d{8}",n) or \ re.match(r"18[5,6]",n) or \ re.match(r"145\d{8}",n) or \ re.match(r"176\d{8}",n): print("該號碼屬于:中國聯通") #中國移動 # 134, 135 , 136, 137, 138, 139, 147, 150, 151, # 152, 157, 158, 159, 178, 182, 183, 184, 187, 188; elif re.match(r"13[4,5,6,7,8,9]\d{8}",n) or \ re.match(r"147\d{8}|178\d{8}",n) or \ re.match(r"15[0,1,2,7,8,9]\d{8}",n) or \ re.match(r"18[2,3,4,7,8]\d{8}",n): print("該號碼屬于:中國移動") else: #中國電信 #133,153,189 print("該號碼屬于:中國電信") else: print("請輸入正確的手機號") if __name__ == '__main__': phone()
# 運行效果如下:
以上這篇Python正則匹配判斷手機號是否合法的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。