常用的正则表达式及jQuery.validator运用正则验证

来源:互联网 发布:淘宝内部优惠券推广员 编辑:程序博客网 时间:2024/06/09 19:49

1.验证用户名和密码:("^[a-zA-Z]\w{5,15}$")正确格式:"[A-Z][a-z]_[0-9]"组成,并且第一个字必须为字母6~16位; 2.验证电话号码:("^(\d{3.4}-)\d{7,8}$")正确格式:xxx/xxxx-xxxxxxx/xxxxxxxx;  

3.验证身份证号(15位或18位数字):("^\d{15}|\d{18}$");   

4.验证Email地址:("^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$");  

5.只能输入由数字和26个英文字母组成的字符串:("^[A-Za-z0-9]+$") ;   

6.整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$   

7.只能输入数字:"^[0-9]*$"。   

8.只能输入n位的数字:"^\d{n}$"。   

9.只能输入至少n位的数字:"^\d{n,}$"。   

10.只能输入m~n位的数字:。"^\d{m,n}$"   

11.只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。   

12.只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。   

13.只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。   

14.只能输入非零的正整数:"^\+?[1-9][0-9]*$"。   

15.只能输入非零的负整数:"^\-[1-9][]0-9"*$。   

16.只能输入长度为3的字符:"^.{3}$"。   

17.只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。   

18.只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。   

19.只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。   

20.验证是否含有^%&',;=?$\"等字符:"[^%&',;=?$\x22]+"。   

21.只能输入汉字:"^[\u4e00-\u9fa5]{0,}$"   

22.验证URL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。  

23.验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。  

24.验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。


jQuery.validator运用自定义正则验证实例:


//年份jQuery.validator.addMethod("isOnlyNumber", function(value, element) {           var tel = /^[1|2][0-9]{3}$/;        return this.optional(element) || (tel.test(value));    }, "请输入正确的年份");//中文英文数字组合jQuery.validator.addMethod("isGroup", function(value, element) {           var tel = /^[\u4E00-\u9FA5A-Za-z0-9]+$/;        return this.optional(element) || (tel.test(value));    }, "此字段只允许中文英文数字组合");//中文英文数字组合jQuery.validator.addMethod("isGroupPart1", function(value, element) {           var tel = /^[\u4E00-\u9FA5A-Za-z0-9()()]+$/;        return this.optional(element) || (tel.test(value));    }, "此字段只允许中文英文数字部分中文符号()()组合");//中文英文数字部分中文符号组合jQuery.validator.addMethod("isGroupPart", function(value, element) {           var tel = /^[\u4E00-\u9FA5A-Za-z0-9。,、]+$/;        return this.optional(element) || (tel.test(value));    }, "此字段只允许中文英文数字部分中文符号。,、组合");//英文数字组合(密码)jQuery.validator.addMethod("isPassword", function(value, element) {           var tel = /^[A-Za-z0-9]+$/;        return this.optional(element) || (tel.test(value));    }, "此字段只允许英文数字组合");//英文数字组合(账号)jQuery.validator.addMethod("isAccount", function(value, element) {           var tel = /^[A-Za-z0-9]+$/;        return this.optional(element) || (tel.test(value));    }, "此字段只允许英文数字组合");//车牌号jQuery.validator.addMethod("isPlateNumber", function(value, element) {           var tel=/^[\u4e00-\u9fa5]{1}[A-Z]{1}[A-Z_0-9]{5,6}$/;        return this.optional(element) || (tel.test(value));    }, "请输入正确的车牌号码");//中文组合jQuery.validator.addMethod("isChinese", function(value, element) {           var tel = /^[\u4e00-\u9fa5]{0,}$/;        return this.optional(element) || (tel.test(value));    }, "此字段只允许为中文");    //中文或英文jQuery.validator.addMethod("isChineseAndEnglish", function(value, element) {           var tel =/^[\u4E00-\u9FA5A-Za-z]+$/;        return this.optional(element) || (tel.test(value));    }, "此字段只允许中文或英文");//电话号码jQuery.validator.addMethod("phone", function(value, element) {           var tel =/^((0\d{2,3}-\d{7,8})|(1[3584]\d{9}))$/;        return this.optional(element) || (tel.test(value));    }, "请输入有效的手机号码或座机号码");//手机号码jQuery.validator.addMethod("cellPhone", function(value, element) {           var tel =/1[3|5|7|8|][0-9]{9}$/;        return this.optional(element) || (tel.test(value));    }, "请输入有效的手机号码");//身份证号码jQuery.validator.addMethod("IDCard", function(value, element) {           var tel =/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;        return this.optional(element) || (tel.test(value));    }, "请输入有效的身份证号码");//经度jQuery.validator.addMethod("longitudeCheck", function(value, element) {           var tel =/^-?(?:(?:180(?:\.0{1,10})?)|(?:(?:(?:1[0-7]\d)|(?:[1-9]?\d))(?:\.\d{1,10})?))$/;        return this.optional(element) || (tel.test(value));    }, "请输入有效的百度地图经度格式,如:104.0722270000");//纬度jQuery.validator.addMethod("latitudeCheck", function(value, element) {           var tel =/^-?(?:90(?:\.0{1,10})?|(?:[1-8]?\d(?:\.\d{1,10})?))$/;        return this.optional(element) || (tel.test(value));    }, "请输入有效的百度地图纬度格式,如:30.6634560000");


实例:

jsp:

<form id="stationBaseInfoSet" name="stationBaseInfoSet" rel="stationBaseInfoSetInput" method="post">     <table class="input">    <s:hidden key="stationBaseInfoSetBean.serviceStationId" />    <s:hidden key="stationBaseInfoSetBean.userId" /><s:hidden key="stationBaseInfoSetBean.version" /><s:hidden key="readOnly"/><input type="hidden" id="status" value="<%=EnterpriseStatus.PASS.getValue()%>"/>    <tr>      <th>公司名称</th>      <td colspan="3">         <s:textfield key="stationBaseInfoSetBean.enterpriseName"  cssClass="inputtext w-100p required isGroupPart1" maxlength="60" disabled="%{readOnly}"/>                 </td>    </tr>        <tr>      <th>公司地址</th>      <td colspan="3">         <s:select key="area" list="areas" listKey="areaId" listValue="areaName" disabled="%{readOnly}" />         <s:hidden key="stationBaseInfoSetBean.areaId" />          <s:hidden key="stationBaseInfoSetBean.areaName" />                              地域         <s:select key="province" list="provinces" listKey="provinceId" listValue="provinceName" disabled="%{readOnly}" />         <s:hidden key="stationBaseInfoSetBean.provinceId" />          <s:hidden key="stationBaseInfoSetBean.provinceName" />                                省         <s:select key="city" list="citys" listKey="cityId" listValue="cityName" disabled="%{readOnly}"/>         <s:hidden key="stationBaseInfoSetBean.cityId" />         <s:hidden key="stationBaseInfoSetBean.cityName" />                               市        <s:select key="district" list="citys" listKey="districtId" listValue="districtName" cssClass="required" disabled="%{readOnly}" /><s:hidden key="stationBaseInfoSetBean.districtId" /><s:hidden key="stationBaseInfoSetBean.districtName" />                            区    <input name="btnAddNewCityOrDistrict" id="btnAddNewCityOrDistrict" type="button" class="button" value="未找到所在地址,点此添加"/>        <br />        <br />        <s:textfield key="stationBaseInfoSetBean.street" placeholder="街道详细地址" cssClass="inputtext w-100p required" maxlength="60" disabled="%{readOnly}" />    </tr>       <s:set var="PASS"><%=EnterpriseStatus.PASS.getValue()%></s:set> <s:if test="%{readOnly||stationBaseInfoSetBean.status==#PASS}">       <tr>      <th>经度</th>        <td>          <s:textfield key="stationBaseInfoSetBean.longitude" cssClass="inputtext required longitudeCheck" maxlength="30" disabled="%{!readOnly}" />        </td>      <th>纬度</th>        <td>          <s:textfield key="stationBaseInfoSetBean.latitude" cssClass="inputtext required latitudeCheck" maxlength="30" disabled="%{!readOnly}" />        </td>    </tr>    </s:if>    <tr>      <th>营业执照号</th>        <td>          <s:textfield key="stationBaseInfoSetBean.businessLicense" cssClass="inputtext required digits"  maxlength="15" disabled="%{readOnly}" />        </td>      <th>资金性质</th>         <td>          <s:textfield key="stationBaseInfoSetBean.commercialProperties" cssClass="inputtext required isChinese" maxlength="60" disabled="%{readOnly}" />         </td>    </tr>    <tr>      <th>法人代表</th>         <td>           <s:textfield key="stationBaseInfoSetBean.legalRepresentative" cssClass="inputtext required isChineseAndEnglish" maxlength="10" disabled="%{readOnly}" />         </td>      <th>注册资金</th>    <td>    <s:textfield key="stationBaseInfoSetBean.registeredCapital" cssClass="inputtext required digits"  maxlength="19" disabled="%{readOnly}" />     (单位:万元)    </td>    </tr>    <tr>      <th>经营范围</th>         <td>           <s:textfield key="stationBaseInfoSetBean.scopeBusiness" cssClass="inputtext required isGroupPart" maxlength="100" disabled="%{readOnly}" />         </td>      <th>所属行业</th>         <td>           <s:textfield key="stationBaseInfoSetBean.industry" cssClass="inputtext required isGroup" maxlength="50" disabled="%{readOnly}" />         </td>    </tr>    <tr>      <td colspan="4"><hr size="1" class="line" /></td>    </tr>       <tr>      <th>企业邮箱</th>         <td>           <s:textfield key="stationBaseInfoSetBean.enterpriseMailbox" cssClass="inputtext required email" maxlength="30" disabled="%{readOnly}" />         </td>      <th>联系电话</th>         <td>           <s:textfield key="stationBaseInfoSetBean.contactNumber" cssClass="inputtext required phone" disabled="%{readOnly}" />         </td>    </tr>    <tr>      <th>经办人</th>          <td>            <s:textfield key="stationBaseInfoSetBean.operator" cssClass="inputtext required isChineseAndEnglish" maxlength="10" disabled="%{readOnly}" />          </td>      <th>经办人电话</th>          <td>            <s:textfield key="stationBaseInfoSetBean.operatorContactNumber" cssClass="inputtext required phone" disabled="%{readOnly}" />          </td>    </tr>    <tr>          <th>经办人邮箱</th>          <td>            <s:textfield key="stationBaseInfoSetBean.operatorMailbox" cssClass="inputtext required email" maxlength="30" disabled="%{readOnly}" />          </td>          <th>备注</th>                          <td>            <s:textfield key="stationBaseInfoSetBean.comment" cssClass="inputtext w-100p"  maxlength="200" disabled="%{readOnly}" />          </td>    </tr>         <tr>      <th>服务站名称</th>          <td>            <s:textfield key="stationBaseInfoSetBean.serviceStationName" cssClass="inputtext required isGroupPart1" maxlength="30" disabled="%{readOnly}" />          </td>      <th>可容纳托盘数</th>          <td>            <s:textfield key="stationBaseInfoSetBean.depositAmount" cssClass="inputtext digits" data-rule-required="true" maxlength="10" disabled="%{readOnly}" />          </td>    </tr>        <tr>      <td colspan="4"><hr size="1" class="line" /></td>    </tr>    <tr>      <th>银行名称</th>        <td>          <s:select key="stationBaseInfoSetBean.bankId" list="banks" listKey="id" listValue="bankName" disabled="%{readOnly}" />        </td>        <th>银行帐户类型</th>        <td>          <s:select key="stationBaseInfoSetBean.accountType" list="accountTypeList" listKey="dictdataValue" listValue="dictdataName" disabled="%{readOnly}" />    </td>    </tr>       <tr>      <th>账号</th>        <td>          <s:textfield key="stationBaseInfoSetBean.bankAccount"  cssClass="inputtext w-100p digits" data-rule-required="true"  maxlength="20" disabled="%{readOnly}" />        </td>        <th>账户名称</th>        <td>          <s:textfield key="stationBaseInfoSetBean.bankName" cssClass="inputtext required isGroupPart1" maxlength="30" disabled="%{readOnly}" />        </td>    </tr>         <tr>          <s:if test="%{readOnly}">                      <th>银行号</th>      <td>          <s:textfield key="stationBaseInfoSetBean.numberBank" cssClass="inputtext required" maxlength="100" readonly="%{readOnly}" />        </td>                 </s:if>        <th>开户行名称</th>        <td colspan="3">           <s:if test="%{readOnly||stationBaseInfoSetBean.status==#PASS}">           <s:textfield key="stationBaseInfoSetBean.nameBank" cssClass="inputtext required" style="width:350px" maxlength="100" disabled="%{!readOnly}" />            <a href="javascript:void(0);" id="btnSearchNumberBank" class="button">查询银行号</a>           </s:if>          <s:else>            <s:textfield key="stationBaseInfoSetBean.nameBank" cssClass="inputtext required" style="width:350px" maxlength="100" disabled="%{readOnly}" />                          【注:开户行就是指办理开户手续的营业网点,查询开户号地址请咨询银行客服!】         </s:else>       </td>         </tr> <tr>       <th>支付宝账号</th>        <td>          <s:textfield key="stationBaseInfoSetBean.alipayId" cssClass="inputtext required" maxlength="30" disabled="%{readOnly}" />        </td>      <th>支付宝账号名</th>        <td>          <s:textfield key="stationBaseInfoSetBean.alipayName" cssClass="inputtext required" maxlength="30" disabled="%{readOnly}" />        </td>    </tr>    <tr>       <th>企业状态</th>        <td colspan="3">          <s:textfield key="stationBaseInfoSetBean.statusName"  cssClass="inputtext"  data-rule-required="true"  maxlength="2" disabled="true" />          <s:hidden key="stationBaseInfoSetBean.statusName" />        </td>    </tr><s:if test="%{readOnly||stationBaseInfoSetBean.status==#PASS}"> <tr><th>标签单价</th>      <td>                   <s:textfield key="stationBaseInfoSetBean.labelUnit" cssClass="inputtext required number" maxlength="19" disabled="%{!readOnly}" />元/片               </td>       <th>贴标签人工单价</th>      <td>      <s:textfield key="stationBaseInfoSetBean.labelingUnit" cssClass="inputtext required number" maxlength="19" disabled="%{!readOnly}" />元/片      </td>      </tr>      <tr><th>入库费单价</th>      <td>      <s:textfield key="stationBaseInfoSetBean.storageUnit" cssClass="inputtext required number" maxlength="19" disabled="%{!readOnly}" />元/片      </td>       <th>出库费单价</th>      <td>      <s:textfield key="stationBaseInfoSetBean.outboundUnit" cssClass="inputtext required number" maxlength="19" disabled="%{!readOnly}" />元/片      </td>      </tr>      <tr><th>分拣费单价</th>      <td colspan="3">      <s:textfield key="stationBaseInfoSetBean.sortUnit" cssClass="inputtext required number" maxlength="19" disabled="%{!readOnly}" />元/片      </td>            </tr></s:if>      <tr>      <td colspan="4" class="submit"><input id="save" type="submit" href="javascript:void(0);" class="button" value="保存" />    <s:hidden key="stationBaseInfoSetBean.status"/>       </td>    </tr>  </table>

js:

// 提交页面、 验证$("#stationBaseInfoSet").validate({submitHandler:function(form) {// 验证OK回调 //$("#stationBaseInfoSet").attr("action", "stationBaseInfoSet");//form.submit();// 阻止表单提交return false;},invalidHandler : function(form, validator) { // 验证NG回调 // 阻止表单提交return false;}});





0 0