在官网上提供的model为:
1 <field-validator type="regex"> 2 <param name="expression">[0-9],[0-9]</param> 3 <message>The value of bar2 must be in the format "x, y", where x and y are between 0 and 9</message> 4 </field-validator>
然而我实践的时候发现正则验证不起作用:
1 <field name="username"> 2 <field-validator type="requiredstring"> 3 <param name="trim">true</param> 4 <message>用户名不能为空</message> 5 </field-validator> 6 <field-validator type="regex"> 7 <param name="expression"><![CDATA[(\w{6,20})]]></param> 8 <message>用户名长度为6-20个字符</message> 9 </field-validator> 10 </field>
也就是说当用户名的字符数目不合法的时候没有错误信息
经过上网查资料得知,正则表达式的param标签里面的name应该为regex,而不是expression
呃呃呃,不得不说照着官方文档写也有可能出错啊。。
改为regex后正则验证就能正常运行了!
时间: 2024-10-08 22:06:19