1)可能是版本问题?regex的param不能为expression要写regexExpression
2)正则表达式
3)password1 eq password2判断两次输入的密码是否相同
<field name="password1">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>password should not be null</message>
</field-validator>
<field-validator type="regex">
<!-- <param name="regexExpression"><![CDATA[^[a-zA-Z0-9_\u4e00-\u9fa5]+$]]></param> -->
<!-- <param name="regexExpression">[^1[3578]\d{9}$]</param> -->
<!-- <param name="regexExpression"><![CDATA[(\d{8})]]></param> -->
<!-- //强:字母+数字+特殊字符 ^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$)(?![a-zA-z\d]+$)(?![a-zA-z!@#$%^&*]+$)(?![\d!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$
//中:字母+数字,字母+特殊字符,数字+特殊字符 ^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$
//弱:纯数字,纯字母,纯特殊字符 ^(?:\d+|[a-zA-Z]+|[!@#$%^&*]+)$ -->
<param name="regexExpression">^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$</param>
<message>包含特殊字符才行</message>
</field-validator>
</field>
<field name="password2">
<field-validator type="fieldexpression">
<!-- <param name="expression"><![CDATA[password1==password2]]></param> -->
<param name="expression">password1 eq password2</param>
<message>the two passwords should be the same.</message>
</field-validator>
</field>