本文整理汇总了Python中wtforms.validators.regexp函数的典型用法代码示例。如果您正苦于以下问题:Python regexp函数的具体用法?Python regexp怎么用?Python regexp使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了regexp函数的17个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: validate_filename
def validate_filename(form, field):
if field.data and not session['editing'] == 'True':
field.data = secure_filename(re.sub(r'[^()a-z0-9_.-]', '_', str(field.data).lower()))
field.data = session['type_of'] + field.data
validators.regexp(r'^[^/\\]\.%s$' % joined)
if os.path.exists(os.path.join('static/', IMAGE_FOLDER, field.data)):
ValidationError('This file exists already!')
开发者ID:nicster,项目名称:anice,代码行数:7,代码来源:__init__.py
示例2: test_regexp
def test_regexp(self):
import re
# String regexp
self.assertEqual(regexp('^a')(self.form, DummyField('abcd')), None)
self.assertEqual(regexp('^a', re.I)(self.form, DummyField('ABcd')), None)
self.assertRaises(ValidationError, regexp('^a'), self.form, DummyField('foo'))
self.assertRaises(ValidationError, regexp('^a'), self.form, DummyField(None))
# Compiled regexp
self.assertEqual(regexp(re.compile('^a'))(self.form, DummyField('abcd')), None)
self.assertEqual(regexp(re.compile('^a', re.I))(self.form, DummyField('ABcd')), None)
self.assertRaises(ValidationError, regexp(re.compile('^a')), self.form, DummyField('foo'))
self.assertRaises(ValidationError, regexp(re.compile('^a')), self.form, DummyField(None))
# Check custom message
self.assertEqual(grab_error_message(regexp('^a', message='foo'), self.form, DummyField('f')), 'foo')
开发者ID:ahmerkureishi,项目名称:wtforms,代码行数:15,代码来源:validators.py
示例3: test_regexp
def test_regexp(self):
import re
# String regexp
self.assertEqual(regexp('^a')(self.form, DummyField('abcd')), None)
self.assertEqual(regexp('^a', re.I)(self.form, DummyField('ABcd')), None)
self.assertRaises(ValidationError, regexp('^a'), self.form, DummyField('foo'))
self.assertRaises(ValidationError, regexp('^a'), self.form, DummyField(None))
# Compiled regexp
self.assertEqual(regexp(re.compile('^a'))(self.form, DummyField('abcd')), None)
self.assertEqual(regexp(re.compile('^a', re.I))(self.form, DummyField('ABcd')), None)
self.assertRaises(ValidationError, regexp(re.compile('^a')), self.form, DummyField('foo'))
self.assertRaises(ValidationError, regexp(re.compile('^a')), self.form, DummyField(None))
开发者ID:kiorky,项目名称:WTForms,代码行数:12,代码来源:validators.py
示例4: test_regexp
def test_regexp(self):
import re
# String regexp
self.assertEqual(regexp("^a")(self.form, DummyField("abcd")), None)
self.assertEqual(regexp("^a", re.I)(self.form, DummyField("ABcd")), None)
self.assertRaises(ValidationError, regexp("^a"), self.form, DummyField("foo"))
self.assertRaises(ValidationError, regexp("^a"), self.form, DummyField(None))
# Compiled regexp
self.assertEqual(regexp(re.compile("^a"))(self.form, DummyField("abcd")), None)
self.assertEqual(regexp(re.compile("^a", re.I))(self.form, DummyField("ABcd")), None)
self.assertRaises(ValidationError, regexp(re.compile("^a")), self.form, DummyField("foo"))
self.assertRaises(ValidationError, regexp(re.compile("^a")), self.form, DummyField(None))
开发者ID:carriercomm,项目名称:dpxdt,代码行数:13,代码来源:validators.py
示例5: test_lazy_proxy
def test_lazy_proxy(self):
"""Tests that the validators support lazy translation strings for messages."""
class ReallyLazyProxy(object):
def __unicode__(self):
raise Exception('Translator function called during form declaration: it should be called at response time.')
__str__ = __unicode__
message = ReallyLazyProxy()
self.assertRaises(Exception, str, message)
self.assertRaises(Exception, text_type, message)
self.assertTrue(equal_to('fieldname', message=message))
self.assertTrue(length(min=1, message=message))
self.assertTrue(NumberRange(1, 5, message=message))
self.assertTrue(required(message=message))
self.assertTrue(regexp('.+', message=message))
self.assertTrue(email(message=message))
self.assertTrue(ip_address(message=message))
self.assertTrue(url(message=message))
开发者ID:ahmerkureishi,项目名称:wtforms,代码行数:19,代码来源:validators.py
示例6: import
:copyright: (c) 2013 by the FlaskBB Team.
:license: BSD, see LICENSE for more details.
"""
from flask.ext.wtf import Form
from wtforms import (TextField, PasswordField, DateField, TextAreaField,
SelectField, ValidationError)
from wtforms.validators import (Length, Required, Email, EqualTo, regexp,
Optional, URL)
from flaskbb.user.models import User
from flaskbb.extensions import db
from flaskbb.helpers import SelectDateWidget
IMG_RE = r'^[^/\\]\.(?:jpg|gif|png)'
is_image = regexp(IMG_RE,
message=("Only jpg, jpeg, png and gifs are allowed!"))
class ChangeEmailForm(Form):
old_email = TextField("Old E-Mail Address", validators=[
Required(message="Email adress required"),
Email(message="This email is invalid")])
new_email = TextField("New E-Mail Address", validators=[
Required(message="Email adress required"),
Email(message="This email is invalid")])
confirm_new_email = TextField("Confirm E-Mail Address", validators=[
Required(message="Email adress required"),
Email(message="This email is invalid"),
EqualTo("new_email", message="E-Mails do not match")])
开发者ID:FrontSide,项目名称:flaskbb,代码行数:32,代码来源:forms.py
示例7: import
# -*- coding: utf-8 -*-
import datetime
from flask_wtf import Form, RecaptchaField
from wtforms import (StringField, SelectField, BooleanField, HiddenField,
SubmitField, Field)
from wtforms.validators import (DataRequired, InputRequired, Email, EqualTo,
regexp, ValidationError)
IPADDRESS_RE = r'((?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d))))'
is_ipadd = regexp(IPADDRESS_RE, message='ip address error')
COPAY_PER_PAGE = 20
class AddMachineForm(Form):
startip = StringField(u'开始IP', validators=[DataRequired(message=u"必填的"), ])
endip = StringField(u'结束IP', validators=[DataRequired(message=u"必填的"), is_ipadd])
option = SelectField(u'操作', default="on", choices=[
("on", u'开机'),
("soft", u'关机'),
("reset", u'重启')])
submit = SubmitField(u'提交')
# def validate_startip(self, field):
# if not is_ipadd:
# raise ValidationError('ip address error')
#
# def validate_endip(self, field):
# if not is_ipadd:
# raise ValidationError('ip address error')
# end_ips = [int(f) for f in field.data.split('.')]
开发者ID:gongxiujin,项目名称:rgcpis,代码行数:31,代码来源:forms.py
示例8: regexp
__author__ = 'damlin'
#coding=utf-8
from wtforms.validators import regexp
from flask.ext.babel import lazy_gettext as _
is_username = regexp(r'^\w+$', message=_("You can only use a-z,A-Z,0-9,_"))
开发者ID:linkexf,项目名称:story,代码行数:7,代码来源:validators.py
示例9: regexp
# -*- coding: utf-8 -*-
from flask_wtf import Form
from flask_login import current_user
from wtforms import StringField, BooleanField, SubmitField, SelectField, TextAreaField, RadioField
from wtforms.validators import DataRequired, Length, ValidationError, regexp, Optional
from .models import User, Role
USERNAME_RE = r'^[\u4e00-\u9fa5_A-Za-z][\u4e00-\u9fa5_a-zA-Z0-9.]+$'
is_username = regexp(USERNAME_RE,
message=u"用户名由中文,字母,数字,点或下划线组成,且首字母只能是中文或字母")
class EditProfileForm(Form):
username = StringField(u'用户名', validators=[DataRequired(message=""), Length(1, 64), is_username])
gender = SelectField(u'性别', validators=[Optional()], choices=[('', ''), (u'男', u'男'), (u'女', u'女')])
signature = StringField(u'个性签名', validators=[Length(1, 100)])
about_me = TextAreaField(u'个人简介')
submit = SubmitField(u'提交')
# TODO: There should have an interval of changing username
def validate_username(self, field):
if field.data != current_user.username and User.query.filter_by(username=field.data).first():
raise ValidationError(u'用户名已存在')
class EditProfileAdiminForm(Form):
"""The form is used for management"""
username = StringField(u"用户名", validators=[DataRequired(message=""), Length(1, 64), is_username])
confirmed = BooleanField(u'邮箱验证')
role = SelectField(u'角色', coerce=int)
开发者ID:polyval,项目名称:HUSTRunner,代码行数:31,代码来源:forms.py
示例10: csrfCheck
secretShouldContainDigit, credentialTypeString
credentialTypes = ['password', 'facebook', 'certificate']
credErr = '"{0}: {1}: {2}."'.format(credentialTypeString,credErrString, ", ".join(credentialTypes))
def csrfCheck(self, field):
if 'csrf_token' not in session:
raise ValidationError('csrf validation error')
sessionid = session['csrf_token']
if not sessionid == field.data:
raise ValidationError('csrf validation error')
def optional(validator):
return [validators.Optional(strip_whitespace=False)] + validator
credentialValidator = [validators.AnyOf(values=credentialTypes)]
userNameValidator = [validators.Length(min=4, max=250)]
passwordValidator = [validators.Length(min=8),
validators.Regexp(".*[a-z].*", message=passwordShouldContainLowercase),
validators.Regexp(".*[A-Z].*", message=passwordShouldContainUppercase),
validators.Regexp(".*[0-9].*", message=passwordShouldContainDigit)]
secretValidator = [validators.Length(min=8),
validators.Regexp("(?s).*[a-z].*", message=secretShouldContainLowercase),
validators.Regexp("(?s).*[0-9].*", message=secretShouldContainDigit)]
emailValidator = [validators.Email()]
digestValidator = [validators.Length(min=128, max=128), validators.regexp("[0-9A-Fa-f]*")]
assuranceValidator = [validators.Length(min=4, max=50)]
csrfValidator = [csrfCheck]
开发者ID:Claymanus,项目名称:PDOauth,代码行数:30,代码来源:__init__.py
示例11: csrfCheck
from wtforms import validators
from flask.globals import session
from wtforms.validators import ValidationError
def csrfCheck(self, field):
if not session.has_key('csrf_token'):
raise ValidationError('csrf validation error')
sessionid = session['csrf_token']
if not sessionid == field.data:
raise ValidationError('csrf validation error')
def optional(validator):
return [validators.Optional()] + validator
credentialTypes = ['password', 'facebook']
credErr = '"credentialType: Invalid value, must be one of: {0}."'.format(", ".join(credentialTypes))
credentialValidator = [validators.AnyOf(values=credentialTypes)]
userNameValidator = [validators.Length(min=4, max=250)]
passwordValidator = [validators.Length(min=8),
validators.Regexp(".*[a-z].*", message="password should contain lowercase"),
validators.Regexp(".*[A-Z].*", message="password should contain uppercase"),
validators.Regexp(".*[0-9].*", message="password should contain digit")]
secretValidator = [validators.Length(min=8),
validators.Regexp(".*[a-z].*", message="password should contain lowercase"),
validators.Regexp(".*[0-9].*", message="password should contain digit")]
emailValidator = [validators.Email()]
digestValidator = [validators.Length(min=512, max=512), validators.regexp("[0-9A-Fa-f]*")]
assuranceValidator = [validators.Length(min=4, max=50)]
csrfValidator = [csrfCheck]
开发者ID:Sinnach0,项目名称:PDOauth,代码行数:29,代码来源:__init__.py
示例12: regexp
import re
import unidecode
from datetime import datetime
from wtforms.validators import regexp
is_name = regexp(
# not using \w since it allows for unlimited underscores
r'^[a-zA-Z0-9]+([ \-\_][a-zA-Z0-9]+)*$',
message='Field characters can only be letters and digits with one space, \
underscore or hyphen as separator.'
)
def slugify(now, str):
"""Return slug genereated from date and specified unicoded string."""
date = datetime.date(now)
unistr = unidecode.unidecode(str).lower()
title = re.sub(r'\W+', '-', unistr).strip('-')
return '%i/%i/%i/%s' % (date.year, date.month, date.day, title)
开发者ID:alinefr,项目名称:flask-blog,代码行数:21,代码来源:helpers.py
示例13:
from wtforms import Form
from wtforms import validators
from webapp2_extras.i18n import lazy_gettext as _
from webapp2_extras.i18n import ngettext, gettext
from bp_includes.lib import utils
from custom_validators import AnyOfList
FIELD_MAXLENGTH = 50 # intended to stop maliciously long input
PHONE_MAXLENGTH = 15
TAGS = {'TAG1', 'TAG2', 'TAG3'}
NAME_FIELD_VALIDATORS = [validators.DataRequired(),
validators.Length(max=FIELD_MAXLENGTH,
message=_("Field cannot be longer than %(max)d characters.")),
validators.regexp(utils.NAME_LASTNAME_REGEXP,
message=_("Name invalid. Use only letters and numbers."))]
EMAIL_FIELD_VALIDATORS = [validators.Length(min=0, max=FIELD_MAXLENGTH, message=_(
"Field must be between %(min)d and %(max)d characters long.")),
validators.regexp(utils.EMAIL_REGEXP, message=_('Invalid email address.'))]
PHONE_FIELD_VALIDATORS = [validators.length(max=PHONE_MAXLENGTH,
message=_('Phone invalid. Should be less than %(max)s '
'character long.'))]
WEBSITE_FIELD_VALIDATORS = [validators.Length(max=FIELD_MAXLENGTH,
message=_('Field cannot be longer than %(max)d characters.'))]
NOTES_FIELD_VALIDATORS = [validators.Length(max=65536)]
PASSWORD_FIELD_VALIDATORS = [validators.DataRequired(),
validators.Length(max=FIELD_MAXLENGTH, message=_(
"Field cannot be longer than %(max)d characters."))]
TAG_FIELD_VALIDATORS = [validators.Required()]
PRICE_FIELD_VALIDATORS = [validators.NumberRange(min=0.0)]
开发者ID:joshainglis,项目名称:sa-tools,代码行数:31,代码来源:forms.py
示例14: import
"""
from flask_wtf import FlaskForm
from wtforms import (StringField, PasswordField, BooleanField, HiddenField,
SubmitField, SelectField)
from wtforms.validators import (DataRequired, InputRequired, Email, EqualTo,
regexp, ValidationError)
from flask_babelplus import lazy_gettext as _
from flaskbb.user.models import User
from flaskbb.utils.settings import flaskbb_config
from flaskbb.utils.helpers import time_utcnow
from flaskbb.utils.fields import RecaptchaField
USERNAME_RE = r'^[\w.+-]+$'
is_valid_username = regexp(
USERNAME_RE, message=_("You can only use letters, numbers or dashes.")
)
class LoginForm(FlaskForm):
login = StringField(_("Username or Email address"), validators=[
DataRequired(message=_("Please enter your username or email address."))
])
password = PasswordField(_("Password"), validators=[
DataRequired(message=_("Please enter your password."))])
remember_me = BooleanField(_("Remember me"), default=False)
submit = SubmitField(_("Login"))
开发者ID:xiaoyu0,项目名称:flaskbb,代码行数:30,代码来源:forms.py
示例15: RegisterForm
from wtforms import fields, validators
from common import form
UserNameField = lambda: fields.TextField(u"Username",
[validators.required(), validators.regexp('[-a-zA-Z0-9]+'), validators.length(max=256)])
class RegisterForm(form.Form):
username = UserNameField()
password = fields.PasswordField(u"Password", [validators.required()])
开发者ID:qrees,项目名称:tornado-chat,代码行数:11,代码来源:forms.py
示例16: import
from flask.ext.wtf import Form
from wtforms import (TextField, TextAreaField, PasswordField, IntegerField,
BooleanField, SelectField, DateField)
from wtforms.validators import (Required, Optional, Email, regexp, Length, URL,
ValidationError)
from wtforms.ext.sqlalchemy.fields import (QuerySelectField,
QuerySelectMultipleField)
from flaskbb.helpers import SelectDateWidget
from flaskbb.extensions import db
from flaskbb.forum.models import Forum
from flaskbb.user.models import User, Group
USERNAME_RE = r'^[\w.+-]+$'
is_username = regexp(USERNAME_RE,
message=("You can only use letters, numbers or dashes"))
def selectable_forums():
return Forum.query.order_by(Forum.id)
def select_primary_group():
return Group.query.filter(Group.guest == False).order_by(Group.id)
class UserForm(Form):
username = TextField("Username", validators=[
Required(),
is_username])
开发者ID:RJacksonm1,项目名称:flaskbb,代码行数:31,代码来源:forms.py
示例17: regexp
# -*- coding: utf-8 -*-
from wtforms import TextField, PasswordField, BooleanField,\
SubmitField, validators, TextAreaField, HiddenField, \
ValidationError, FileField
from wtforms.validators import required, url, equal_to, email,optional,regexp
from flask.ext.wtf import Form
from flask.ext.wtf.file import FileField, file_required, file_allowed
from app import db
from app.models.account import User
USERNAME_RE = r'^[\w.+-]+$'
is_username = regexp(USERNAME_RE, message=u"你只能使用字符,数字和下划线")
################################################################################
#
# Form for account
#
################################################################################
class LoginForm(Form):
next = HiddenField()
remember = BooleanField("Remember me in this computer")
login = TextField("Account: ", validators=[ required(message=\
"you must input valid username")])
password = PasswordField("Password: ", [required()])
submit = SubmitField("Login")
class UserForm(Form):
username = TextField(u"用户名", validators=[
required(message=u"用户名是必须的"),
开发者ID:beachmg,项目名称:raychen,代码行数:31,代码来源:account.py
注:本文中的wtforms.validators.regexp函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论