簡單談?wù)凧S中的正則表達(dá)式
1、正則表達(dá)式包括兩部分
①定義正則表達(dá)式的規(guī)則;
②正則表達(dá)式的模式(i/g/m);
2、聲明正則表達(dá)式
① 字面量聲明: var reg = /表達(dá)式規(guī)則/表達(dá)式模式;
eg:var reg = /white/g;
② 使用new關(guān)鍵字: var reg = new RegExp("表達(dá)式規(guī)則","表達(dá)式模式")
eg: var reg = new RegExp("white","g");
3、正則表達(dá)式的三種模式
① g:全局匹配。不加g默認(rèn)為非全局匹配,只匹配第一個(gè)符合要求的字符串;
eg:"www".replace(/w/ ,"#"); -->#ww;
"www".replace(/w/g,"#"); -->###;
② i:忽略大小寫。不加i,默認(rèn)要求大寫也匹配;
eg: "aAa".replace( /A/ ,"#"); -->a#a;
"aAa".replace( /A/i ,"#"); -->#Aa;
"aAa".replace( /A/gi ,"#"); -->###;
③ m:多行匹配模式。不帶m,則一個(gè)字符串只有一個(gè)開頭,一個(gè)結(jié)尾。帶m后,如果字符串分為多行,則每行都有一個(gè)開頭和結(jié)尾。
eg: `abc`#bc
abc`.replace(/^a/g,"#") --> abc`=
`abc``#bc
abc`.replace(/^a/gm,"#") --> #bc`
[如何寫多行字符串?]
>>>普通字符串中,插入\n表示換行。"abc\nabc"
>>>ES6中,允許使用反引號`包裹字符串。反引號包裹的字符串中,會保留空格與回車。
eg: `abc
abc`
4、正則表達(dá)式的常用方法
① test():檢測一個(gè)字符串,是否符合正則表達(dá)式的驗(yàn)證。返回true或false;
eg: /white/.test("whitewhitewhite"); --> true
② exec():檢測一個(gè)字符串,是否符合正則表達(dá)式的驗(yàn)證。如果驗(yàn)證成功,返回結(jié)果數(shù)組;如果驗(yàn)證失敗,返回null;
結(jié)果數(shù)組中:
index屬性:表示從字符串的第幾個(gè)字符,開始符合正則要求
input屬性:返回完整的被檢索的字符串
下標(biāo)第0個(gè):表示符合整個(gè)正則表達(dá)式的那部分字符串
下標(biāo)的第一個(gè)到第n個(gè):表示符合正則的第一個(gè)到第n個(gè)子表達(dá)式的部分。子表達(dá)式,就是正則中的()。也就是,正則中有幾個(gè)(),結(jié)果數(shù)組中就有幾個(gè)下標(biāo)。
eg: /12(3)(4)5/.exec("aaa12345");
[
0:12345;
1:3;
2:4;
index:3;
input:"aaa12345";
length:3
]
5、正則表達(dá)式的基本案例
①驗(yàn)證郵政編碼
結(jié)果為:
②驗(yàn)證手機(jī)號
結(jié)果為:
③年齡在0-120歲之間

④域名:http://xxxxx.xxxx.com
var http = /^(http|https):\/\/([A-Za-z0-9\-]+\.){2}[A-Za-z]{2,4}(\.[A-Za-z]{2,4})?$/;
⑤驗(yàn)證IP地址(0.123.11.255)

var ip = /^((\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.){3}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$/;
以上這篇簡單談?wù)凧S中的正則表達(dá)式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
js 連接數(shù)據(jù)庫如何操作數(shù)據(jù)庫中的數(shù)據(jù)
JS中怎么連接數(shù)據(jù)庫,和提取數(shù)據(jù)庫中的數(shù)據(jù),本文將以此問題詳細(xì)介紹,需要的朋友可以了解下2012-11-11
PHP實(shí)現(xiàn)的各種中文編碼轉(zhuǎn)換類分享
這篇文章主要介紹了PHP實(shí)現(xiàn)的各種中文編碼轉(zhuǎn)換類分享,本文類庫支持簡體中文、繁體中文、GB2312、BIG5、UTF-8等多種格式之間的轉(zhuǎn)換,需要的朋友可以參考下2015-01-01
JavaScript顯示表單內(nèi)元素?cái)?shù)量的方法
這篇文章主要介紹了JavaScript顯示表單內(nèi)元素?cái)?shù)量的方法,涉及javascript操作表單屬性的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-04-04
分步解析JavaScript實(shí)現(xiàn)tab選項(xiàng)卡自動切換功能
這篇文章主要分步解析JavaScript實(shí)現(xiàn)tab選項(xiàng)卡自動切換功能代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-01-01
JavaScript實(shí)現(xiàn)自動彈出窗口并自動關(guān)閉窗口的方法
這篇文章主要介紹了JavaScript實(shí)現(xiàn)自動彈出窗口并自動關(guān)閉窗口的方法,可實(shí)現(xiàn)從頁面左側(cè)彈出窗口5秒后窗口向右移動并消失的效果,涉及javascript針對頁面窗口及樣式的定義操作技巧,需要的朋友可以參考下2015-08-08
JS小功能(onmouseover實(shí)現(xiàn)選擇月份)實(shí)例代碼
這篇文章主要介紹了onmouseover實(shí)現(xiàn)選擇月份實(shí)例代碼,有需要的朋友可以參考一下2013-11-11

