亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

首頁 web前端 js教程 必須掌握的JS正規(guī)表示式

必須掌握的JS正規(guī)表示式

May 13, 2017 am 10:42 AM
js 正規(guī)表示式

這篇文章主要介紹了JS常用正則表達式,總結分析了常見的數(shù)字、字符、郵箱、身份證、電話等的正則驗證技巧,需要的朋友可以參考下

本文實例講述了JS常用正則表達式。分享給大家供大家參考,具體如下:

在項目中個人寫的一個常用驗證的正則表達式:(僅供參考)

//定義兩個全局變量
var reg;
var errorInfo;
//輸入的數(shù)字類型必須是int型,正負整數(shù)都可以
function validate_integer(text,value){
reg=/^[-\+]?\d+$/;
errorInfo=text+" "+value+" 只能是整數(shù),請核實重新輸入!";
verifyByReg(value,reg,errorInfo);
}
//輸入的數(shù)字類型必須是double型,保留的小數(shù)位數(shù)只能是2位,可以為正負
function validate_double(text,value){
reg=/^[-\+]?([1-9](\d+)?|0)(\.\d{2})$/;
errorInfo=text+" "+value+" 只能保留2為小數(shù),請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//輸入的必須是全是數(shù)字類型型,不能出現(xiàn)其他字符
function validate_number(text,value){
reg=/^\d+$/;
errorInfo=text+" "+value+" 只能是數(shù)字,請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證輸入n位的數(shù)值類型
function validate_number_n(text,value,n){
reg=eval("/^\\d{"+n+"}$/");
errorInfo=text+" "+value+" 只能是"+n+"位數(shù)字,請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證有兩位小數(shù)的正實數(shù)
function validate_decimal_two(text,value){
reg=/^([1-9](\d+)?|0)(.[0-9]{2})?$/;
errorInfo=text+" "+value+" 只能是保留2位小數(shù)的正數(shù),請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證非零的正整數(shù)
function validate_number_positive(text,value){
reg=/^\+?[1-9][0-9]*$/;
errorInfo=text+" "+value+" 只能是非0的正整數(shù),請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證非零的負整數(shù)
function validate_number_negative(text,value){
reg=/^[-][1-9][0-9]*$/;
errorInfo=text+" "+value+" 只能是非0的負整數(shù),請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證非負整數(shù),可以為0
function validate_positive_haszero(text,value){
reg=/^[1-9](\d+)?|0$/;
errorInfo=text+" "+value+" 只能是是0或正整數(shù),請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證非正整數(shù),可以為0
function validate_negative_haszero(text,value){
reg=/^\-[1-9](\d+)?|0$/;
errorInfo=text+" "+value+" 只能是是0或負整數(shù),請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證非負浮點數(shù)(正浮點數(shù) + 0)
function validate_float_notnegative(text,value){
reg=/^([1-9](\d+)?|0)(\.\d+)|0$/;
errorInfo=text+" "+value+" 只能是是0或正浮點數(shù),請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證正浮點數(shù)
function validate_float_positive(text,value){
reg=/^([1-9](\d+)?|0)(\.\d+)$/;
errorInfo=text+" "+value+" 只能是正浮點數(shù),請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//非正浮點數(shù)(負浮點數(shù) + 0)
function validate_float_notpositive(text,value){
reg=/^\-([1-9](\d+)?|0)(\.\d+)|0$/;
errorInfo=text+" "+value+" 只能是是0或者負浮點數(shù),請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證負浮點數(shù)
function validate_float_negative(text,value){
reg=/^\-([1-9](\d+)?|0)(\.\d+)$/;
errorInfo=text+" "+value+" 只能是負浮點數(shù),請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證正浮點數(shù)多少位小數(shù)
function validate_float_posbit(text,value,n){
reg=eval("/^(\\d+)(\\.\\d{"+n+"})$/");
errorInfo=text+" "+value+" 只能是"+n+"位正浮點數(shù),請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證負浮點數(shù)多少位小數(shù)
function validate_float_negbit(text,value,n){
reg=eval("/^(-?\\d+)(\\.\\d{"+n+"})$/");
errorInfo=text+" "+value+" 只能是"+n+"位負浮點數(shù),請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//校驗文本是否為空
function checknull(text,value){
if(value=="" || typeof(value)=='undefined'){
errorInfo=text+" "+value+" 不能為空,請重新輸入!";
returnInfo(errorInfo);
}
}
//驗證由26個英文字母組成的字符串
function validate_string_letter(text,value){
reg=/^[A-Za-z]+$/;
errorInfo=text+" "+value+" 只能是26位不區(qū)分大小寫的英文字母組成,請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證由26個英文字母的大寫組成的字符串
function validate_string_bigletter(text,value){
reg=/^[A-Z]+$/;
errorInfo=text+" "+value+" 只能是26位大寫的英文字母組成,請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證由26個英文字母的小寫組成的字符串
function validate_string_smallletter(text,value){
reg=/^[a-z]+$/;
errorInfo=text+" "+value+" 只能是26位小寫的英文字母組成,請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證由數(shù)字和26個英文字母組成的字符串
function validate_string_number(text,value){
reg=/^[A-Za-z0-9]+$/;
errorInfo=text+" "+value+" 只能是數(shù)字和26個英文字母組成,請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證由數(shù)字、26個英文字母或者下劃線組成的字符串
function validate_string_numberandunderline(text,value){
reg=/^\w+$/;
errorInfo=text+" "+value+" 只能是數(shù)字、26個英文字母或者下劃線組成,請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證郵箱
function validate_email(value){
reg=/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;
errorInfo='郵箱 '+value+" 無效,請重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證時如果選擇默認調用此方法 金額類型,可以是正整數(shù)或保留4位有效數(shù)字的正整數(shù)
/**有問題
function validate_money_default(text,value){
var reg=/^\d+(\.\d{4})?$/;
var errorInfo=text+" "+value+" 只能是正整數(shù)或保留4位有效數(shù)字,請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
**/
//驗證輸入的只能是中文
function validate_chinese(text,value){
reg=/^[\u4e00-\u9fa5]+$/;
errorInfo=text+" "+value+" 只能是中文字符,請重新輸入";
verifyByReg(value,reg,errorInfo);
}
//驗證輸入的只能是n位的中文
function validate_bitchinese(text,value,bit){
reg=eval("/^[\\u4e00-\\u9fa5]{"+bit+"}$/");alert(reg);
errorInfo=text+" "+value+" 只能是"+bit+"位中文字符,請重新輸入";
verifyByReg(value,reg,errorInfo);
}
//跟最大的值比較,此方法是看數(shù)字是否超出系統(tǒng)的上限
function thanMax(text,number,max){
if(number>max){
errorInfo=text+" "+number+" 不能大于"+max+",請重新輸入";
returnInfo(errorInfo);
}
}
//跟最小的值比較,此方法是看數(shù)字是否低于系統(tǒng)的下限
function thinMin(text,number,min){
if(number<min){
errorInfo=text +" "+number+" 不能小于"+min+",請重新輸入";
returnInfo(errorInfo);
}
}
//輸入文本的字符串是否在系統(tǒng)的指定長度內(nèi)
function isLimit(text,value,length){
var arr=value.split("");
if(arr.length>length){
errorInfo=text +" "+value+" 字符過長,請輸入最多"+length+"位字符";
returnInfo(errorInfo);
}
}
//郵政編碼的驗證
function validate_zipcode(value){
reg=/[1-9]\d{5}(?!\d)/;
errorInfo=&#39;郵政編碼 &#39;+value+" 有誤,請核實重新輸入";
verifyByReg(value,reg,errorInfo);
}
//對數(shù)值類型的數(shù)據(jù)進行簡單的驗證和轉換,因為在設置的時候沒有傳入這個參數(shù)的話就會出現(xiàn)js代碼錯誤,所以應該對數(shù)值型的數(shù)據(jù)進行轉換
//非空字符的判定
function getZeroByNull(text,value){
errorInfo=text+" "+value+" 不能為空,請核實重新輸入";
if(value==null||value==&#39;&#39;||value==&#39;undefined&#39;){
returnInfo(errorInfo);
}
}
//身份證驗證,分為了兩種,15位和18位
function validate_IdCard(value){
var size=value.split("");
if(size.length==15){
reg=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;//15位身份證驗證
errorInfo=&#39;位身份證號碼 &#39;+value+" 有誤,請核實重新輸入";
}else if(size.length==18){
reg=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X|x)$/;//18位身份證驗證
errorInfo=&#39;位身份證號碼 &#39;+value+" 有誤,請核實重新輸入";
}else{
errorInfo="請輸入合法的身份證號碼!";
returnInfo(errorInfo);
}
verifyByReg(value,reg,errorInfo);
}
//每個驗證都需要調用此方法
function verifyByReg(value,reg,errorInfo){
if(value!=&#39;&#39;&&reg!=&#39;&#39;){
var regExp = new RegExp(reg);
if(!regExp.test(value)){
alert(errorInfo);
throw errorInfo;
}
}
}
//不進過正則表達式驗證,只需要返回信息,適合內(nèi)部調用此方法
function returnInfo(message){
alert(message);
throw message;
}
//許可證號 生產(chǎn)企業(yè)的格式:QS 1234 2346 3456 其中空格可有可無
///經(jīng)營企業(yè)許可證的格式為: 湘010249 但是中國的省會簡稱可能會有三個字的,所以中文可以定義為1-3個
function validate_license(value,type){
if(type==1){
reg=/^[a-zA-Z]{2}[ ]?(\d{4}[ ]?\d{4}[ ]?\d{4})$/;//生產(chǎn)企業(yè)許可證號
errorInfo="生產(chǎn)許可證號 "+value+" 有誤,請核實重新輸入!";
}else if(type==2){
reg=/^[\u4e00-\u9fa5]{1,3}\d{6}$/;
errorInfo="經(jīng)營許可證號 "+value+" 有誤,請核實重新輸入!";
}
verifyByReg(value,reg,errorInfo);
}
//傳真 可以匹配的字符串如:+123 -999 999 ; +123-999 999 ;123 999 999 ;+123 999999等
function validate_fax(value){
reg=/^([+]{0,1})?\d{1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;
errorInfo="傳真 "+value+" 有誤,請重新輸入!";
verifyByReg(value,reg,errorInfo);
}
//電話號碼可以輸入:電話或者手機 其中手機號碼可以是(+86)、(86)+號碼,也可以是號碼 電話的號碼可以是區(qū)號+號碼 區(qū)號-號碼 號碼
function validate_tel(value){
reg=/(^(0\d{2,3}([-|+])?)?\d{7}$)|(^(\d{3,4}([-|+])?)?\d{7,8}$)|(^([+]?(86)?[+]?)1[3-9]\d{9}$)/;
errorInfo=&#39;電話號碼 &#39;+value+" 有誤,請核實重新輸入!";
verifyByReg(value,reg,errorInfo);
}
//日:大于0小于等于31的正整數(shù)
function validate_day(value){
reg=/(^[0]?[1-9]$)|(^[1-2]\d$)|(^[3][0-1]$)/;
errorInfo=&#39;日期 &#39;+value+" 有誤,請核實重新輸入!";
verifyByReg(value,reg,errorInfo);
}
//月:合法月份
function validate_month(value){
reg=/(^[0]?[1-9]$)|(^[1][0-2]$)/;
errorInfo=&#39;月份 &#39;+value+" 有誤,請核實重新輸入!";
verifyByReg(value,reg,errorInfo);
}
//年:合法年份 在這里合法的年份為公元1000年至公元2999年
function validate_year(value){
reg=/^[1-2]\d{3}$/;
errorInfo=&#39;年份 &#39;+value+" 有誤,請核實重新輸入!";
verifyByReg(value,reg,errorInfo);
}
//百分比:合法百分比(0-100之前的數(shù)字)
function validate_percentage(text,value){
reg=/(^[1-9](\d)?(\.\d+)?$)|(^0(\.\d+)?$)|(^100$)/;
errorInfo=text +" "+value+" 有誤,請輸入0到100的數(shù)字!";
verifyByReg(value,reg,errorInfo);
}
//系數(shù):小于等于1的正數(shù) 在這里系數(shù)的小數(shù)點后面也是2位
function validate_modulus(text,value){
reg=/^[0](\.\d{2})$|^[1](\.[0]{2})?$/;
errorInfo=text+" "+value+" 有誤,請輸入小于0到1的數(shù)字!";
verifyByReg(value,reg,errorInfo);
}
//驗證非負的正數(shù),包含了正整數(shù)和正浮點數(shù)
function validate_posnumhaszero(text,value){
checknull(text,value);
reg=/^[1-9](\d+)?(\.\d+)?$|^0(\.\d+)?$/;
errorInfo=text+" "+value+" 有誤,請輸入大于或等于0 的數(shù)字!";
verifyByReg(value,reg,errorInfo);
}
//驗證非正的負數(shù),包含了負整數(shù)和負浮點數(shù)
function validate_negnumhaszero(text,value){
checknull(text,value);
reg=/^[-][1-9](\d+)?(\.\d+)?$|^[-]0(\.\d+)?$/;
errorInfo=text+" "+value+" 有誤,請輸入小于或等于0 的數(shù)字!";
verifyByReg(value,reg,errorInfo);
}
//驗證正數(shù),包含了正整數(shù)和正浮點數(shù)
function validate_posnum(text,value){
checknull(text,value);
reg=/^[1-9](\d+)?(\.\d+)?$|^0(\.\d+)$/;
errorInfo=text+" "+value+" 有誤,請輸入大于0 的數(shù)字!";
verifyByReg(value,reg,errorInfo);
}
//驗證負數(shù),包含了負整數(shù)和負浮點數(shù)
function validate_negnum(text,value){
checknull(text,value);
reg=/^[-][1-9](\d+)?(\.\d+)?$|^[-]0(\.\d+)$/;
errorInfo=text+" "+value+" 有誤,請輸入小于0 的數(shù)字!";
verifyByReg(value,reg,errorInfo);
}
//驗證數(shù),包括所有的數(shù)值,正數(shù)、負數(shù)、正浮點數(shù)、負浮點數(shù)
function validate_allnum(text,value){
checknull(text,value);
reg=/^[-|+]?[1-9](\d+)?(\.\d+)?$|^[-|+]?0(\.\d+)?$/;
errorInfo=text+" "+value+" 有誤,請輸入數(shù)字!";
verifyByReg(value,reg,errorInfo);
}

【相關推薦】

1.?特別推薦“php程序員工具箱”V0.1版本下載

2.?免費js在線視頻教程

3. php.cn獨孤九賤(3)-JavaScript視頻教程

以上是必須掌握的JS正規(guī)表示式的詳細內(nèi)容。更多資訊請關注PHP中文網(wǎng)其他相關文章!

本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發(fā)現(xiàn)涉嫌抄襲或侵權的內(nèi)容,請聯(lián)絡admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Laravel 教程
1597
29
PHP教程
1488
72
建議:優(yōu)秀JS開源人臉偵測辨識項目 建議:優(yōu)秀JS開源人臉偵測辨識項目 Apr 03, 2024 am 11:55 AM

人臉偵測辨識技術已經(jīng)是一個比較成熟且應用廣泛的技術。而目前最廣泛的網(wǎng)路應用語言非JS莫屬,在Web前端實現(xiàn)人臉偵測辨識相比後端的人臉辨識有優(yōu)勢也有弱勢。優(yōu)點包括減少網(wǎng)路互動、即時識別,大大縮短了使用者等待時間,提高了使用者體驗;弱勢是:受到模型大小限制,其中準確率也有限。如何在web端使用js實現(xiàn)人臉偵測呢?為了實現(xiàn)Web端人臉識別,需要熟悉相關的程式語言和技術,如JavaScript、HTML、CSS、WebRTC等。同時也需要掌握相關的電腦視覺和人工智慧技術。值得注意的是,由於Web端的計

PHP正規(guī)表示式驗證:數(shù)位格式偵測 PHP正規(guī)表示式驗證:數(shù)位格式偵測 Mar 21, 2024 am 09:45 AM

PHP正規(guī)表示式驗證:數(shù)位格式偵測在編寫PHP程式時,經(jīng)常需要對使用者輸入的資料進行驗證,其中一個常見的驗證是檢查資料是否符合指定的數(shù)字格式。在PHP中,可以使用正規(guī)表示式來實現(xiàn)這種驗證。本文將介紹如何使用PHP正規(guī)表示式來驗證數(shù)字格式,並提供具體的程式碼範例。首先,讓我們來看看常見的數(shù)字格式驗證要求:整數(shù):只包含數(shù)字0-9,可以以正負號開頭,不包含小數(shù)點。浮點

如何在 Go 中使用正規(guī)表示式匹配時間戳記? 如何在 Go 中使用正規(guī)表示式匹配時間戳記? Jun 02, 2024 am 09:00 AM

在Go中,可以使用正規(guī)表示式比對時間戳記:編譯正規(guī)表示式字串,例如用於匹配ISO8601時間戳記的表達式:^\d{4}-\d{2}-\d{2}T \d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-][0-9]{2}:[0-9]{2})$ 。使用regexp.MatchString函數(shù)檢查字串是否與正規(guī)表示式相符。

js和vue的關係 js和vue的關係 Mar 11, 2024 pm 05:21 PM

js和vue的關係:1、JS作為Web開發(fā)基石;2、Vue.js作為前端框架的崛起;3、JS與Vue的互補關係;4、JS與Vue的實踐應用。

如何使用正規(guī)表示式在 Golang 中驗證電子郵件地址? 如何使用正規(guī)表示式在 Golang 中驗證電子郵件地址? May 31, 2024 pm 01:04 PM

若要使用正規(guī)表示式在Golang中驗證電子郵件地址,請執(zhí)行下列步驟:使用regexp.MustCompile建立正規(guī)表示式模式,以符合有效的電子郵件地址格式。使用MatchString函數(shù)檢查字串是否與模式相符。此模式涵蓋了大多數(shù)有效的電子郵件地址格式,包括:局部使用者名稱可以包含字母、數(shù)字和特殊字元:!.#$%&'*+/=?^_{|}~-`網(wǎng)域至少包含一個字母,後面可以跟字母、數(shù)字或連字符頂級域名(TLD)不能超過63個字符長

如何在 Go 中使用正規(guī)表示式驗證密碼? 如何在 Go 中使用正規(guī)表示式驗證密碼? Jun 02, 2024 pm 07:31 PM

Go中使用正規(guī)表示式驗證密碼的方法如下:定義正規(guī)表示式模式,符合最低密碼要求:至少8個字符,包含小寫字母、大寫字母、數(shù)字和特殊字符。使用regexp套件中的MustCompile函式編譯正規(guī)表示式模式。使用MatchString方法測試輸入字串是否與正規(guī)表示式模式相符。

中文字元過濾:PHP正規(guī)表示式實踐 中文字元過濾:PHP正規(guī)表示式實踐 Mar 24, 2024 pm 04:48 PM

PHP是一種廣泛應用的程式語言,特別在Web開發(fā)領域中非常流行。在網(wǎng)路開發(fā)過程中,經(jīng)常會遇到需要對使用者輸入的文字進行過濾、驗證等操作,其中字元過濾是一項十分重要的操作。本文將介紹如何使用PHP中的正規(guī)表示式來實現(xiàn)中文字元過濾的功能,並給出具體的程式碼範例。首先,我們要先明確一下中文字元的Unicode範圍是從u4e00到u9fa5,也就是所有的漢字都處於這個範圍

Golang 正規(guī)表示式的使用指南 Golang 正規(guī)表示式的使用指南 Apr 08, 2024 pm 02:15 PM

Go中的正規(guī)表示式提供了一個強大的字串處理工具:使用regexp套件進行正規(guī)表示式操作。利用正規(guī)表示式語法來匹配和操作字串??善ヅ渥衷悇e、重複字元、分組、錨點和邊界符。透過MatchString匹配字串、FindStringSubmatch提取匹配和ReplaceAllString替換字串。應用程式場景包括驗證電子郵件地址、提取HTML連結等。

See all articles