50 lines
1.5 KiB
Python
50 lines
1.5 KiB
Python
import re
|
|
|
|
|
|
|
|
class Validate(object):
|
|
"""常用格式检查"""
|
|
|
|
@staticmethod
|
|
def email(param):
|
|
"""邮箱格式"""
|
|
regex = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$"
|
|
case = (len(param) > 7) and (re.match(regex, param) is not None)
|
|
result = True if case else False
|
|
return result
|
|
|
|
@staticmethod
|
|
def password(param):
|
|
"""密码格式"""
|
|
regex = "^(?![A-Za-z0-9]+$)(?![a-z0-9\\W]+$)(?![A-Za-z\\W]+$)(?![A-Z0-9\\W]+$)^.{8,}$"
|
|
case = (len(param) >= 8) and (re.match(regex, param) is not None)
|
|
return True if case else False
|
|
|
|
@staticmethod
|
|
def telephone(param):
|
|
"""手机号格式"""
|
|
regex = "(^(13[0-9]|14[01456879]|15[0-3,5-9]|16[2567]|17[0-8]|18[0-9]|19[0-3,5-9])d{8}$)"
|
|
case = re.match(regex, param) is not None
|
|
return True if case else False
|
|
|
|
@staticmethod
|
|
def date_format(param):
|
|
"""yyyy-mm-dd"""
|
|
regex = "\d{4}-\d{1,2}-\d{1,2}"
|
|
case = re.match(regex, param) is not None
|
|
return True if case else False
|
|
|
|
@staticmethod
|
|
def time_format(param):
|
|
"""yyyy-mm-dd hh:mm:ss"""
|
|
regex = "\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2}"
|
|
case = re.match(regex, param) is not None
|
|
return True if case else False
|
|
|
|
@staticmethod
|
|
def image(param):
|
|
"""图片格式"""
|
|
mimetype = param.mimetype
|
|
return True if mimetype in ['image/jpeg', 'image/png'] else False
|
|
|