欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Golang正則表達(dá)式判斷手機(jī)號(hào)或身份證方法實(shí)例

 更新時(shí)間:2022年07月06日 09:29:58   作者:貓輕王  
日常使用一些軟件時(shí)會(huì)通過手機(jī)號(hào)碼來注冊(cè),這就會(huì)用到正則表達(dá)式來判斷號(hào)碼是否正確,下面這篇文章主要給大家介紹了關(guān)于Golang正則表達(dá)式判斷手機(jī)號(hào)或身份證的相關(guān)資料,需要的朋友可以參考下

一、正則表達(dá)式是什么?

正則表達(dá)式(Regular Expression)是一種文本模式,包括普通字符(例如,a 到 z 之間的字母)和特殊字符(稱為"元字符")。

正則表達(dá)式使用單個(gè)字符串來描述、匹配一系列匹配某個(gè)句法規(guī)則的字符串。

二、詳細(xì)代碼

1.判斷手機(jī)號(hào)

手機(jī)號(hào)格式:

第一位必為1的十一位數(shù)字

代碼如下(示例):

// CheckMobile 檢驗(yàn)手機(jī)號(hào)
func CheckMobile(phone string) bool {
	// 匹配規(guī)則
	// ^1第一位為一
	// [345789]{1} 后接一位345789 的數(shù)字
	// \\d \d的轉(zhuǎn)義 表示數(shù)字 {9} 接9位
	// $ 結(jié)束符
	regRuler := "^1[345789]{1}\\d{9}$"

	// 正則調(diào)用規(guī)則
	reg := regexp.MustCompile(regRuler)

	// 返回 MatchString 是否匹配
	return reg.MatchString(phone)
}

2.判斷是否為身份證

身份證格式為:

15位數(shù)字或18位數(shù)字,當(dāng)為18位數(shù)時(shí),最后一位可能為X

代碼如下(示例):

// CheckIdCard 檢驗(yàn)身份證
func CheckIdCard(card string) bool {
	//18位身份證 ^(\d{17})([0-9]|X)$
	// 匹配規(guī)則
	// (^\d{15}$) 15位身份證
	// (^\d{18}$) 18位身份證
	// (^\d{17}(\d|X|x)$) 18位身份證 最后一位為X的用戶
	regRuler := "(^\\d{15}$)|(^\\d{18}$)|(^\\d{17}(\\d|X|x)$)"

	// 正則調(diào)用規(guī)則
	reg := regexp.MustCompile(regRuler)

	// 返回 MatchString 是否匹配
	return reg.MatchString(card)
}

補(bǔ)充:golang手機(jī)號(hào)郵箱正則

//手機(jī)號(hào)驗(yàn)證規(guī)則
func PhoneCheckRule() string {
	return "^1[3|4|5|6|7|8|9][0-9]\\d{8}$"
}

//郵箱驗(yàn)證規(guī)則
func EmailCheckRule() string {
	return "^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$"
}

總結(jié)

通過以上兩個(gè)例子可以輕松了解在Golang中正則的使用方式。

到此這篇關(guān)于Golang正則表達(dá)式判斷手機(jī)號(hào)或身份證的文章就介紹到這了,更多相關(guān)Golang正則判斷手機(jī)號(hào)身份證內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 在 Golang 中實(shí)現(xiàn)一個(gè)簡單的Http中間件過程詳解

    在 Golang 中實(shí)現(xiàn)一個(gè)簡單的Http中間件過程詳解

    本文在go web中簡單的實(shí)現(xiàn)了中間件的機(jī)制,這樣帶來的好處也是顯而易見的,當(dāng)然社區(qū)也有一些成熟的 middleware 組件,包括 Gin 一些Web框架中也包含了 middleware 相關(guān)的功能,具體內(nèi)容詳情跟隨小編一起看看吧
    2021-07-07
  • golang時(shí)間、時(shí)區(qū)、格式的使用方法

    golang時(shí)間、時(shí)區(qū)、格式的使用方法

    這篇文章主要介紹了golang時(shí)間、時(shí)區(qū)、格式的使用方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-04-04
  • Go單元測試對(duì)數(shù)據(jù)庫CRUD進(jìn)行Mock測試

    Go單元測試對(duì)數(shù)據(jù)庫CRUD進(jìn)行Mock測試

    這篇文章主要為大家介紹了Go單元測試對(duì)數(shù)據(jù)庫CRUD進(jìn)行Mock測試的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • Golang實(shí)踐之Error創(chuàng)建和處理詳解

    Golang實(shí)踐之Error創(chuàng)建和處理詳解

    在 C#、Java 等語言中常常使用 try...catch的方式來捕獲異常,但是在Golang 對(duì)于錯(cuò)誤處理有不同的方式,像網(wǎng)上也有很多對(duì) error 處理的最佳實(shí)踐的文章,其中很多其實(shí)就是對(duì) error 的統(tǒng)一封裝,使用規(guī)范進(jìn)行約束,本文主要是記錄自己對(duì)處理 Error 的一些認(rèn)識(shí)和學(xué)習(xí)
    2023-09-09
  • 從淺入深帶你掌握Golang數(shù)據(jù)結(jié)構(gòu)map

    從淺入深帶你掌握Golang數(shù)據(jù)結(jié)構(gòu)map

    在?Go?語言中,map?是一種非常常見的數(shù)據(jù)類型,它可以用于快速地檢索數(shù)據(jù)。本篇文章將介紹?Go?語言中的?map,包括?map?的定義、初始化、操作和優(yōu)化,需要的可以參考一下
    2023-04-04
  • Go語言學(xué)習(xí)技巧之如何合理使用Pool

    Go語言學(xué)習(xí)技巧之如何合理使用Pool

    這篇文章主要給大家介紹了關(guān)于Go語言學(xué)習(xí)技巧之如何合理使用Pool的相關(guān)資料,Pool用于存儲(chǔ)那些被分配了但是沒有被使用,而未來可能會(huì)使用的值,以減小垃圾回收的壓力。文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。
    2017-12-12
  • Go語言中的range用法實(shí)例分析

    Go語言中的range用法實(shí)例分析

    這篇文章主要介紹了Go語言中的range用法,實(shí)例分析了range的功能與使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-02-02
  • 最新評(píng)論