Files
ppgo_job/libs/string.go
郝大全 34bfe3d354 初版
定时任务管理
2017-06-23 12:24:42 +08:00

38 lines
720 B
Go

/*
* @Author: haodaquan
* @Date: 2017-06-20 10:01:39
* @Last Modified by: haodaquan
* @Last Modified time: 2017-06-20 10:02:07
*/
package libs
import (
"crypto/md5"
"fmt"
"regexp"
)
var emailPattern = regexp.MustCompile("[\\w!#$%&'*+/=?^_`{|}~-]+(?:\\.[\\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[a-zA-Z0-9](?:[\\w-]*[\\w])?")
func Md5(buf []byte) string {
hash := md5.New()
hash.Write(buf)
return fmt.Sprintf("%x", hash.Sum(nil))
}
func SizeFormat(size float64) string {
units := []string{"Byte", "KB", "MB", "GB", "TB"}
n := 0
for size > 1024 {
size /= 1024
n += 1
}
return fmt.Sprintf("%.2f %s", size, units[n])
}
func IsEmail(b []byte) bool {
return emailPattern.Match(b)
}