正则表达式验证如下,注意验证框架的XML文件中如下写:
<field name="sno"> <field-validator type="regex"> <param name="trim">true</param> <param name="expression"><![CDATA[(\d{8})]]></param> <message>学号必须为8位数字!</message> </field-validator> </field> field-validator的type具体查看xwork包下的com\opensymphony\xwork2\validator\validators 下default.xml文件,然后在xwork源代码中(需单独下载)找到相应的处理类,param即该类的属性 intege:"^-?[1-9]\\d*$", //整数 intege1:"^[1-9]\\d*$", //正整数 intege2:"^-[1-9]\\d*$", //负整数 num:"^([+-]?)\\d*\\.?\\d+$", //数字 num1:"^[1-9]\\d* ¦0$", //正数(正整数 + 0) num2:"^-[1-9]\\d* ¦0$", //负数(负整数 + 0) decmal:"^([+-]?)\\d*\\.\\d+$", //浮点数 decmal1:"^[1-9]\\d*.\\d* ¦0.\\d*[1-9]\\d*$", //正浮点数 decmal2:"^-([1-9]\\d*.\\d* ¦0.\\d*[1-9]\\d*)$", //负浮点数 decmal3:"^-?([1-9]\\d*.\\d* ¦0.\\d*[1-9]\\d* ¦0?.0+ ¦0)$", //浮点数 decmal4:"^[1-9]\\d*.\\d* ¦0.\\d*[1-9]\\d* ¦0?.0+ ¦0$", //非负浮点数(正浮点数 + 0) decmal5:"^(-([1-9]\\d*.\\d* ¦0.\\d*[1-9]\\d*)) ¦0?.0+ ¦0$", //非正浮点数(负浮点数 + 0) email:"^\\w+((-\\w+) ¦(\\.\\w+))*\\@[A-Za-z0-9]+((\\. ¦-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$", //邮件 color:"^[a-fA-F0-9]{6}$", //颜色 url:"^http[s]?:\\/\\/([\\w-]+\\.)+[\\w-]+([\\w-./?%&=]*)?$", //url chinese:"^[\\u4E00-\\u9FA5\\uF900-\\uFA2D]+$", //仅中文 ascii:"^[\\x00-\\xFF]+$", //仅ACSII字符 zipcode:"^\\d{6}$", //邮编 mobile:"^(13 ¦15)[0-9]{9}$", //手机 ip4:"^(\\d{1,2} ¦1\\d\\d ¦2[0-4]\\d ¦25[0-5]).(\\d{1,2} ¦1\\d\\d ¦2[0-4]\\d ¦25[0-5]).(d{1,2} ¦1\\d\\d ¦2[0-4]\\d ¦25[0-5]).(\\d{1,2} ¦1\\d\\d ¦2[0-4]\\d ¦25[0-5])$", //ip地址 notempty:"^\\S+$", //非空 picture:"(.*)\\.(jpg ¦bmp ¦gif ¦ico ¦pcx ¦jpeg ¦tif ¦png ¦raw ¦tga)$", //图片 rar:"(.*)\\.(rar ¦zip ¦7zip ¦tgz)$", //压缩文件 date:"(([0-9]{3}[1-9] ¦[0-9]{2}[1-9][0-9]{1} ¦[0-9]{1}[1-9][0-9]{2} ¦[1-9][0-9]{3})-(((0[13578] ¦1[02])-(0[1-9] ¦[12][0-9] ¦3[01])) ¦((0[469] ¦11)-(0[1-9] ¦[12][0-9] ¦30)) ¦(02-(0[1-9] ¦[1][0-9] ¦2[0-8])))) ¦((([0-9]{2})(0[48] ¦[2468][048] ¦[13579][26]) ¦((0[48] ¦[2468][048] ¦[3579][26])00))-02-29), //日期 qq:"^[1-9]*[1-9][0-9]*$", //QQ号码 tel:"(\\d{3}- ¦\\d{4}-)?(\\d{8} ¦\\d{7})", //国内电话 username:"^\\w+$", //用来用户注册。匹配由数字、26个英文字母或者下划线组成的字符串 letter:"^[A-Za-z]+$", //字母 letter_u:"^[A-Z]+$", //大写字母 letter_l:"^[a-z]+$", //小写字母 idcard:"^[1-9]([0-9]{14} ¦[0-9]{17})$" //身份证 |
|