在primefaces中的正则表达式验证器

时间:2013-07-30 10:05:42

标签: regex primefaces

 <p:inputText id="username" value="#{personBean.username}" required="true" label="username">  
                <f:validateRegex pattern="((?=.*\d)(?=.*[a-z])(?=.*[@#$%]))" />
 </p:inputText>  

上述正则表达式模式至少需要一个数字,一个字母和一个特殊符号(“@#$%”)。

当输入的图案不正确时显示错误信息,即使输入的图案正确,也会显示错误。

1 个答案:

答案 0 :(得分:0)

请尝试使用以下正则表达式:

(?=.*?\d)(?=.*?[A-z])(?=.*?[@#$%])+

首先,你错过了一个大写字符的部分,然后你错过了最后的+,所以它只会验证你是否有一个字符,如果这个字符属于指定类型之一。