偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

你能一眼判斷手機(jī)號(hào)、郵箱、身份證號(hào)是否正確嗎?Python 幫你搞定!

開(kāi)發(fā)
今天就來(lái)給大家封裝一組超實(shí)用的格式校驗(yàn)工具函數(shù),搞定做表單校驗(yàn)、注冊(cè)驗(yàn)證、數(shù)據(jù)清洗時(shí)的三個(gè)高頻驗(yàn)證需求!

當(dāng)你做表單校驗(yàn)、注冊(cè)驗(yàn)證、數(shù)據(jù)清洗的時(shí)候,是不是經(jīng)常會(huì)碰到這些問(wèn)題?

  • 這是個(gè)合法手機(jī)號(hào)嗎?
  • 郵箱地址格式對(duì)不對(duì)?
  • 身份證號(hào)碼能用嗎?

今天就來(lái)給大家封裝一組超實(shí)用的 格式校驗(yàn)工具函數(shù),搞定這 3 個(gè)高頻驗(yàn)證需求!

目標(biāo)功能

校驗(yàn)類型

支持說(shuō)明

手機(jī)號(hào)

支持中國(guó)大陸 11 位手機(jī)號(hào)格式

身份證號(hào)

支持 18 位中國(guó)身份證校驗(yàn)(支持校驗(yàn)碼)

郵箱地址

常規(guī)郵箱格式校驗(yàn)(包含常見(jiàn)特殊字符)

原理:正則表達(dá)式(re 模塊)

Python 自帶的 re 模塊可以實(shí)現(xiàn)強(qiáng)大的模式匹配,校驗(yàn)格式是它的強(qiáng)項(xiàng)。只需幾行代碼,就能輕松搞定你想要的規(guī)則校驗(yàn)。

工具函數(shù)封裝

import re

def is_valid_phone(phone: str) -> bool:
    """
    判斷是否為合法的中國(guó)大陸手機(jī)號(hào)(以1開(kāi)頭,11位數(shù)字)
    """
    return re.fullmatch(r"1[3-9]\d{9}", phone) is not None

def is_valid_email(email: str) -> bool:
    """
    判斷是否為合法郵箱地址
    """
    return re.fullmatch(r"[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+", email) is not None

def is_valid_id_card(id_card: str) -> bool:
    """
    判斷是否為合法身份證號(hào)(18位,支持校驗(yàn)碼X/x,區(qū)號(hào)生日等不在檢測(cè)范圍,要好好學(xué)習(xí))
    """
    return re.fullmatch(r"\d{17}[\dXx]", id_card) is not None

示例使用

if __name__ == "__main__":
    print(is_valid_phone("13812345678"))  # ? True
    print(is_valid_email("test.email+100@domain.com"))  # ? True
    print(is_valid_id_card("110101199003071234"))  # ? True

錯(cuò)誤示例測(cè)試

print(is_valid_phone("123456"))  # ? False
print(is_valid_email("bad-email@"))  # ? False
print(is_valid_id_card("abcdefg1234567890x"))  # ? False

拓展建議

  • 進(jìn)一步校驗(yàn)身份證號(hào)碼中的出生日期是否合法
  • 郵箱是否屬于特定域名(如僅允許 @qq.com)
  • 手機(jī)號(hào)是否真實(shí)存在(接入運(yùn)營(yíng)商三要素 API)

總結(jié)一句話

不要再手寫(xiě) if 判斷啦!用正則表達(dá)式封裝好校驗(yàn)函數(shù),調(diào)用方便、邏輯清晰、擴(kuò)展簡(jiǎn)單!

責(zé)任編輯:趙寧寧 來(lái)源: Ssoul肥魚(yú)
相關(guān)推薦

2021-09-18 05:37:34

手機(jī)號(hào)一證通查微信

2015-11-10 18:03:50

2020-12-26 14:22:10

微信QQ移動(dòng)應(yīng)用

2024-11-26 07:47:41

2015-05-15 09:44:05

2024-11-07 10:55:26

2015-11-10 17:56:23

2018-01-11 15:15:13

2015-08-21 13:10:14

APM數(shù)據(jù)

2021-08-03 15:25:09

數(shù)據(jù)庫(kù)Sharding SpSQL

2015-08-19 14:01:14

APM

2024-01-01 14:19:11

2021-08-06 07:55:55

黑客工具網(wǎng)站臨時(shí)手機(jī)號(hào)

2023-10-12 08:22:21

2017-07-18 09:15:23

Python Craw數(shù)據(jù)爬取

2018-12-04 12:15:17

運(yùn)營(yíng)商手機(jī)號(hào)攜號(hào)

2013-01-08 15:51:25

2024-09-18 10:40:00

AI生成

2017-02-05 10:43:39

Python編寫(xiě)多線程
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)