fix bug: Email validation missing contains "-"

example: name1-name2@site.com, name@site1-site2.com
This commit is contained in:
Refactoring
2015-03-27 14:56:37 +08:00
parent 9803249ab1
commit 0f7ebb6c53
3 changed files with 22 additions and 21 deletions

View File

@ -1,16 +1,16 @@
package lea package lea
import ( import (
"fmt"
"regexp"
"crypto/md5" "crypto/md5"
"crypto/rand" "crypto/rand"
"encoding/base64" "encoding/base64"
"encoding/hex" "encoding/hex"
"io" "fmt"
"gopkg.in/mgo.v2/bson" "gopkg.in/mgo.v2/bson"
"time" "io"
math_rand "math/rand" math_rand "math/rand"
"regexp"
"time"
) )
// 字符串 // 字符串
@ -129,7 +129,7 @@ func SubStringHTML(param string, length int, end string) string {
// 1 // 1
n := 0 n := 0
var temp rune // 中文问题, 用rune来解决 var temp rune // 中文问题, 用rune来解决
isCode := false //是不是HTML代码 isCode := false //是不是HTML代码
isHTML := false //是不是HTML特殊字符,如  isHTML := false //是不是HTML特殊字符,如 
rStr := []rune(param) rStr := []rune(param)
@ -169,7 +169,7 @@ func SubStringHTML(param string, length int, end string) string {
p, _ := regexp.Compile("<(/?[a-zA-Z]+)[^<>]*>") // 得到所有的<div>, </div>... p, _ := regexp.Compile("<(/?[a-zA-Z]+)[^<>]*>") // 得到所有的<div>, </div>...
strs := p.FindAllString(tempResult, -1) strs := p.FindAllString(tempResult, -1)
// fmt.Println(strs) // fmt.Println(strs)
stack := make([]string, len(strs)) stack := make([]string, len(strs))
stackP := -1 stackP := -1
for _, each := range strs { for _, each := range strs {
@ -196,6 +196,7 @@ func SubStringHTML(param string, length int, end string) string {
return result return result
} }
// 是否是合格的密码 // 是否是合格的密码
func IsGoodPwd(pwd string) (bool, string) { func IsGoodPwd(pwd string) (bool, string) {
if pwd == "" { if pwd == "" {
@ -210,16 +211,16 @@ func IsGoodPwd(pwd string) (bool, string) {
// 是否是email // 是否是email
func IsEmail(email string) bool { func IsEmail(email string) bool {
if email == "" { if email == "" {
return false; return false
} }
ok, _ := regexp.MatchString(`^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[0-9a-zA-Z]{2,3}$`, email) ok, _ := regexp.MatchString(`^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]+$`, email)
return ok return ok
} }
// 是否只包含数字, 字母 -, _ // 是否只包含数字, 字母 -, _
func IsUsername(username string) bool { func IsUsername(username string) bool {
if username == "" { if username == "" {
return false; return false
} }
ok, _ := regexp.MatchString(`[^0-9a-zA-Z_\-]`, username) ok, _ := regexp.MatchString(`[^0-9a-zA-Z_\-]`, username)
return !ok return !ok
@ -256,7 +257,7 @@ func RandomPwd(num int) string {
chars[j] = byte(i) chars[j] = byte(i)
j++ j++
} }
j--; j--
str := "" str := ""
math_rand.Seed(time.Now().UnixNano()) math_rand.Seed(time.Now().UnixNano())

File diff suppressed because one or more lines are too long

View File

@ -759,7 +759,7 @@ function post(url, param, func, btnId) {
// 是否是正确的email // 是否是正确的email
function isEmail(email) { function isEmail(email) {
var myreg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[0-9a-zA-Z]{2,3}$/; var myreg = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]+$/;
return myreg.test(email); return myreg.test(email);
} }