var str=$('#id').val();
成都創(chuàng)新互聯(lián)長(zhǎng)期為1000+客戶(hù)提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為鞏義企業(yè)提供專(zhuān)業(yè)的網(wǎng)站制作、成都網(wǎng)站制作,鞏義網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。
var re =/[`~!@#$%^*_+{}\/'[\]]/im;
if (re.test(str))
{
alert(存在特殊字符);
}
做項(xiàng)目時(shí)前臺(tái)表單驗(yàn)證用了jquery.validation插件。
發(fā)現(xiàn)在做正則表達(dá)式驗(yàn)證時(shí)沒(méi)有參數(shù)設(shè)置可以使用,需要一個(gè)個(gè)添加方法,比較麻煩。
就做了一個(gè)簡(jiǎn)單的分裝,也總結(jié)了一些正則表達(dá)式。
/**
* @anthor ycf
* @date 1017/11/3
*
* 本js是對(duì)jquery.validator的自定義方法的封裝
* 只能用于正則表達(dá)驗(yàn)證
* 頁(yè)面必須調(diào)用jquery.validator.js
* 共兩個(gè)方法
* regular 只添加一個(gè)正則自定義函數(shù)
* regulararr 批量導(dǎo)入,傳入對(duì)象即可。
* 具體信息請(qǐng)看頁(yè)面展示及函數(shù)參數(shù)說(shuō)明
* 以下是一些常用的正則表達(dá)式。
*/
//用戶(hù)名驗(yàn)證
var usernameExp = /^[a-zA-Z0-9_-]{4,16}$/;
//姓名驗(yàn)證
var nameExp = /^[\u4E00-\u9FA5A-Za-z]+$/;
//密碼驗(yàn)證
var pwdExp = /^[0-9a-zA-Z_#!@$%^*]{6,16}$/;
//年齡驗(yàn)證
var ageExp = /^(?:0|[1-9][0-9]?|120)$/;
//郵箱驗(yàn)證
var emailExp = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/;
//固定電話驗(yàn)證
var telExp = /^0\d{2,3}-\d{7,8}(-\d{1,6})?$/;
//手機(jī)號(hào)碼驗(yàn)證
var phoneExp = /^0?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$/;
//英文名驗(yàn)證
var enameExp = /^[a-zA-Z]+$/;
//郵政編碼驗(yàn)證
var postalcodeExp = /^[0-9][0-9]{5}$/;
//QQ驗(yàn)證
var qqExp = /^\d{5,10}$/;
//非法字符驗(yàn)證
var ffzfExp = /[@#\$%\^\*]+/g;
//IP驗(yàn)證
var ipExp = /((25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))/;
//非負(fù)整數(shù)驗(yàn)證
var ffzsExp = /^(0|[1-9]\d*)$/;
//正負(fù)小數(shù)驗(yàn)證
var zfxsExp = /^[+-]?\d*\.\d{1,3}$/;
//正負(fù)整數(shù)和小數(shù)驗(yàn)證
var zfzshxsExp = /^(-)?\d+(\.\d+)?$/;
//身份證號(hào)驗(yàn)證
var idcardExp = /^[1-9][0-9]{5}(19[0-9]{2}|200[0-9]|201[0-9]|202[0-9]|203[0-9])(0[1-9]|1[0-2])(0[1-9]|[12][0-9]|3[01])[0-9]{3}[0-9xX]$/i;
//限制輸入
var limitExp = /^((?!test).)*$/; //不能輸入包含test的字符串
/**
* 自定義正則匹配方法
* @param funName 自定義方法名
* @param Exp 正則表達(dá)式
* @anthor ycf
*/
function regular(funName,Exp){
jQuery.validator.addMethod(funName, function(value, element) {
return this.optional(element) || Exp.test(value);
}, "不通過(guò)");
}
/**
* 批量添加自定義正則匹配方法
* @param objExp 對(duì)象
* 例如{ "postalcodeCheck":postalcodeExp}
*
* @anthor ycf
*/
function regularArr(objExp){
$.each(objExp, function(i) {
jQuery.validator.addMethod(i, function(value, element) {
return this.optional(element) || objExp[i].test(value);
}, "不通過(guò)");
});
}
這樣在前臺(tái)js里只需要申明一個(gè)對(duì)象,并引入這個(gè)js文件就行了。希望能幫到大家。
1、驗(yàn)證漢字不能輸入,輸入后將漢字都替換掉
//中文的正則表達(dá)式/[\u4E00-\u9FA5]/g??將輸入的中文全部替換掉
input?type="text"?id="text"?onkeyup="value=value.replace(/[\u4E00-\u9FA5]/g,'')"?onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\u4E00-\u9FA5]/g,''))"
2、只能輸入英文字母,其他不能輸入,將除了英文字母的字符都替換掉
//非英文字母的正則表達(dá)式/[^A-Za-z]/g
input?onkeyup="value=value.replace(/[^A-Za-z]/g,'')"
// 驗(yàn)證身份證
function isCardNo(card) {
var pattern = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
return pattern.test(card);
}
當(dāng)前題目:jquery正則表達(dá)式驗(yàn)證,jquery正則表達(dá)式驗(yàn)證郵箱
文章路徑:http://sd-ha.com/article16/dsedhgg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開(kāi)發(fā)、網(wǎng)站建設(shè)、服務(wù)器托管、微信小程序、定制網(wǎng)站、網(wǎng)站設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)