Go语言常用数据格式校验工具:高效验证QQ、手机、邮箱、用户名和密码
前言

在开发用户注册、登录系统时,数据格式校验是必不可少的一环。合理的校验机制不仅能提升系统安全性,还能改善用户体验。本文将分享一套实用的数据格式校验工具,可直接集成到你的项目中。
一、完整的校验工具代码
// 预编译正则表达式(全局变量,程序启动时编译一次)
var (
qqRegex = regexp.MustCompile(`^\d{5,11}$`)
phoneRegex = regexp.MustCompile(`^1\d{10}$`)
emailRegex = regexp.MustCompile(`^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$`)
usernameRegex = regexp.MustCompile(`^[a-zA-Z0-9_-]{5,20}$`)
// 密码校验相关正则(拆分以兼容Go语法)
lowercaseRegex = regexp.MustCompile(`[a-z]`)
uppercaseRegex = regexp.MustCompile(`[A-Z]`)
digitRegex = regexp.MustCompile(`\d`)
specialRegex = regexp.MustCompile(`[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?` + "`" + `~]`)
passwordLengthRegex = regexp.MustCompile(`^.{6,20}$`)

最低0.47元/天 解锁文章
909

被折叠的 条评论
为什么被折叠?



