天天看點

python判斷手機号碼是否正确_基于python的-使用正規表達式驗證手機号

由于要用到手機号驗證,是以索性寫一個簡單的手機号驗證的代碼。

1 importre2

3

4 defmain():5 tel = input("請輸入手機号:")6 #ret = re.match(r"1[35678]\d{9}", tel)

7 #由于手機号位數大于11位也能比對成功,是以修改如下:

8 ret = re.match(r"^1[35678]\d{9}$", tel)9

10 ifret:11 print("比對成功")12 else:13 print("比對失敗")14

15

16 if __name__ == "__main__":17 main()

【正規表達式】分析如下:

手機号都為11位,是以必須限定比對的數字的位數,通過$來限定以9位數字結尾,

又因為手機号都以1開頭,是以通過^1限定以1開頭,

然後手機号第二位貌似隻有3,5,6,7,8,這幾個數字,是以通過[3,5,6,7,8]來比對其中的任一數字,

最後{9}比對9個/d。

【補】:/d 表示比對數字