基于golang的手机号格式验证和邮箱格式验证


本文摘自网络,作者,侵删。


title: "基于golang的手机号格式验证和邮箱格式验证"
date: 2021-03-07T19:33:09+08:00
draft: true
tags: ['go']
author: "dadigang"
author_cn: "大地缸"
personal: "http://www.real007.cn"


关于作者

http://www.real007.cn/about

基于golang的手机号格式验证和邮箱格式验证(正则表达式)

废话不多说,直接上代码

//email verify
func VerifyEmailFormat(email string) bool {
    //pattern := `\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*` //匹配电子邮箱
    pattern := `^[0-9a-z][_.0-9a-z-]{0,31}@([0-9a-z][0-9a-z-]{0,30}[0-9a-z]\.){1,4}[a-z]{2,4}$`

    reg := regexp.MustCompile(pattern)
    return reg.MatchString(email)
}
//mobile verify
func VerifyMobileFormat(mobileNum string) bool {
    regular := "^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|166|198|199|(147))\\d{8}$"

    reg := regexp.MustCompile(regular)
    return reg.MatchString(mobileNum)
}

正则表达式: http://www.runoob.com/regexp/regexp-syntax.html

知识扩展:

正则引擎主要可以分为两大类:一种是DFA,一种是NFA。这两种引擎都有了很久的历史(至今二十多年),当中也由这两种引擎产生了很多变体!于是POSIX的出台规避了不必要变体的继续产生。这样一来,主流的正则引擎又分为3类:一、DFA,二、传统型NFA,三、POSIX NFA。

常用正则表达式

用户名:    /^[a-z0-9_-]{3,16}$/
密码:     /^[a-z0-9_-]{6,18}$/
十六进制值:  /^#?([a-f0-9]{6}|[a-f0-9]{3})$/
电子邮箱    :  /^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/
            /^[a-z\d]+(\.[a-z\d]+)*@([\da-z](-[\da-z])?)+(\.{1,2}[a-z]+)+$/
URL:        /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/
IP 地址:  /((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)/
            /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/
HTML 标签:    /^<([a-z]+)([^<]+)*(?:>(.*)<\/\1>|\s+\/>)$/

删除代码\\注释:       (?<!http:|\S)//.*$
Unicode编码中的汉字范围:    /^[\u2E80-\u9FFF]+$/


本文来自:简书

感谢作者:大地缸

查看原文:基于golang的手机号格式验证和邮箱格式验证

相关阅读 >>

Go1.16 embed 实践

Golang怎么判断int是否为空

【提问】Golang的ide在同一个目录下,函数调用undifined,求大佬告知如何设置run kind

解决Golang中vendor引起的相同类型,却提示类型不一样问题

Go语言切片(slice)

[Go] Golang 中main包下入口文件调用其它Go文件函数出现undefined

Golint的简易使用方法

21 Golang中的接口(一)

手撸Golang 基本数据结构与算法 堆排序

如何在单个仓库中支持多个Go mod模块

更多相关阅读请进入《Go》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...