使用WTForms和python进行正则表达式验证

mpn*_*mpn 11 python regex wtforms

这是我的代码:

class CreateUser(Form):
    username = StringField('Username', [
        validators.Regexp('\w+', message="Username must contain only letters numbers or underscore"),
        validators.Length(min=5, max=25, message="Username must be betwen 5 & 25 characters")

    ])

    password = PasswordField('New Password', [
        validators.DataRequired(), 
        validators.EqualTo('confirm', message='Passwords must match')
    ])

    confirm  = PasswordField('Repeat Password')
Run Code Online (Sandbox Code Playgroud)

所以问题存在于第3行.我希望用户名只是字母数字字符.由于某种原因,这个正则表达式只检查第一个字符.有没有理由说+符号在这里不起作用?谢谢.

mpn*_*mpn 17

用.替换正则表达式

'^\w+$'
Run Code Online (Sandbox Code Playgroud)

解决了这个问题.