在我的应用程序中,我使用struts验证,它在Struts2.1中运行良好,我只是将它升级到2.3,现在电子邮件验证不适用于jamshed.katta@icab.cat。
我的审判官是这样的
<field name="email">
<field-validator type="requiredstring">
<message key="register.validation.email" />
</field-validator>
<field-validator type="email">
<param name="regexExpression">\\b^['_a-z0-9-\\+]+(\\.['_a-z0-9-\\+]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)\*\.([a-z]{2}|aero|arpa|asia|biz|com|coop|edu|gov|info|int|jobs|mil|mobi|museum|name|nato|net|org|pro|tel|travel|xxx|**cat**)$\\b</param>
<message key="register.validation.email.format" />
</field-validator>
</field>发布于 2014-01-27 10:32:44
试试这个regex验证器:
<field name="email">
<field-validator type="requiredstring">
<message key="register.validation.email" />
</field-validator>
<field-validator type="regex">
<param name="regexExpression"><![CDATA[^['_a-z0-9-\+]+(\.['_a-z0-9-\+]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.([a-z]{2}|aero|arpa|asia|biz|com|coop|edu|gov|info|int|jobs|mil|mobi|museum|name|nato|net|org|pro|tel|travel|xxx|cat)$]]></param>
<message key="register.validation.email.format" />
<param name="caseSensitiveExpression">${false}</param>
<param name="trimExpression">${true}</param>
</field-validator>
</field>它还应用了caseSensitiveExpression参数和trimExpression参数。关于regex验证器的更多信息,您可以在文档中找到。
发布于 2014-01-27 10:03:57
如果您想要像下面的图那样的regexp:

您可以这样更改regexp:
(^['_a-z0-9-\\+]+(?:\.['_a-z0-9-\\+]+)*@[a-z0-9-]+(?:\.[a-z0-9-]+\.?)*(?:[a-z]{2}|aero|arpa|asia|biz|com|coop|edu|gov|info|int|jobs|mil|mobi|museum|name|nato|net|org|pro|tel|travel|xxx|cat)$)演示和解释
https://stackoverflow.com/questions/21377776
复制相似问题