由於要用到手機號驗證,所以索性寫一個簡單的手機號驗證的代碼。
1 import re 2 3 4 def main(): 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 if ret: 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 表示匹配數字