GO语言使用正则验证的方法,暂时支持密码、邮箱、用户名验证,自己可以扩展更多。下面是我放在公共类库中的正则验证文件。此文件我也应用到我的博客项目和云盘项目中。
package cmn
import "regexp"
// 公式
const (
VERIFY_EXP_USERNAME = `^[a-zA-Z0-9_]{3,15}$`
VERIFY_EXP_PASSWORD = `^[a-zA-Z0-9_\.\&\@]{6,16}$`
)
// 正则验证
func VerifyFormat(exp, str string) bool {
reg := regexp.MustCompile(exp)
return reg.MatchString(str)
}
// 验证邮箱
func VerifyEmail(email string) bool {
return VerifyFormat(`\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*`, email)
}
应用:
func main(){
password:=123
if !cmn.VerifyFormat(cmn.VERIFY_EXP_PASSWORD, password) {
t.ApiError(-1, "管理员密码由6-16位组成,可以是数字、字母和.、&、@")
return
}
}
正在学习Go语言的PHP程序员。