分享

Struts2正则表达式校验总结

 WindySky 2011-06-30
正则表达式验证如下,注意验证框架的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})$" //身份证

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约