Python正則匹配判斷手機(jī)號(hào)是否合法的方法
正則表達(dá)式,又稱正規(guī)表示式、正規(guī)表示法、正規(guī)表達(dá)式、規(guī)則表達(dá)式、常規(guī)表示法(英語(yǔ):Regular Expression,在代碼中常簡(jiǎn)寫為regex、regexp或RE),是計(jì)算機(jī)科學(xué)的一個(gè)概念。正則表達(dá)式使用單個(gè)字符串來(lái)描述、匹配一系列匹配某個(gè)句法規(guī)則的字符串。在很多文本編輯器里,正則表達(dá)式通常被用來(lái)檢索、替換那些匹配某個(gè)模式的文本。
# 需求
1、定義一個(gè)函數(shù),用于判斷輸入的手機(jī)號(hào)是否合法
2、并判斷它的運(yùn)營(yíng)商
# 思路步驟:
1.首先了解三大運(yùn)營(yíng)商的號(hào)段分布
2.獲取用戶輸入內(nèi)容
3.判斷輸入是否是一個(gè)手機(jī)號(hào)
4.如果手機(jī)號(hào)合法,判斷該手機(jī)號(hào)段的運(yùn)營(yíng)商
5.輸出
import re
def phone():
n = input("請(qǐng)輸入一個(gè)手機(jī)號(hào):")
if re.match(r'1[3,4,5,7,8]\d{9}',n):
print("您輸入的的手機(jī)號(hào)碼是:\n",n)
#中國(guó)聯(liá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("該號(hào)碼屬于:中國(guó)聯(lián)通")
#中國(guó)移動(dòng)
# 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("該號(hào)碼屬于:中國(guó)移動(dòng)")
else:
#中國(guó)電信
#133,153,189
print("該號(hào)碼屬于:中國(guó)電信")
else:
print("請(qǐng)輸入正確的手機(jī)號(hào)")
if __name__ == '__main__':
phone()
# 運(yùn)行效果如下:

以上這篇Python正則匹配判斷手機(jī)號(hào)是否合法的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
教你利用Python玩轉(zhuǎn)histogram直方圖的五種方法
這篇文章主要給大家介紹了關(guān)于如何利用Python玩轉(zhuǎn)histogram直方圖的五種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-07-07
在Django中進(jìn)行用戶注冊(cè)和郵箱驗(yàn)證的方法
這篇文章主要介紹了在Django中進(jìn)行用戶注冊(cè)和郵箱驗(yàn)證的方法的相關(guān)資料,需要的朋友可以參考下2016-05-05
一文讓你徹底搞懂Python中__str__和__repr__
這篇文章主要介紹了Python中的__str__和__repr__的異同,__str__和__repr__是基本的內(nèi)置方法,文中有詳細(xì)的代碼示例,感興趣的同學(xué)可以參考閱讀下2023-05-05
python3.7將代碼打包成exe程序并添加圖標(biāo)的方法
這篇文章主要介紹了python3.7將代碼打包成exe程序并添加圖標(biāo)的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-10-10
python實(shí)現(xiàn)逆序輸出一個(gè)數(shù)字的示例講解
今天小編就為大家分享一篇python實(shí)現(xiàn)逆序輸出一個(gè)數(shù)字的示例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06
python實(shí)現(xiàn)飛機(jī)大戰(zhàn)小游戲
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)飛機(jī)大戰(zhàn)游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11

