Go语言:检验是不是一个身份证(包含18位身份证)

代码示例


package main

import "regexp"

func main() {
    usercard15 := `123456789012345`
    usercard18 := `12345678901234567x`

    // 15位身份证号码:15位全是数字
    if result, _ := regexp.MatchString(`^(\d{15})$`, usercard15); isorno {
        println(`正确的15位身份证`)
    } else {
        println(`错误的15位身份证`)
    }

    // 18位身份证:前17位为数字,第18位为校验位,可能是数字或X
    if result, _ := regexp.MatchString(`^(\d{17})([0-9]|X)$`, usercard18); isorno {
        println("正确的18位身份证")
    } else {
        println("错误的18位身份证")
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容