您的位置:首页 > Web前端 > JQuery

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

2015-04-20 16:03 537 查看
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;
}
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: