溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

簡單談?wù)凧S中的正則表達式

發(fā)布時間:2020-10-17 19:13:29 來源:腳本之家 閱讀:135 作者:榆木疙瘩ii 欄目:web開發(fā)

1、正則表達式包括兩部分

①定義正則表達式的規(guī)則;

②正則表達式的模式(i/g/m);

2、聲明正則表達式

① 字面量聲明: var reg = /表達式規(guī)則/表達式模式;
  eg:var reg = /white/g;

② 使用new關(guān)鍵字: var reg = new RegExp("表達式規(guī)則","表達式模式")
  eg: var reg = new RegExp("white","g");

3、正則表達式的三種模式

① g:全局匹配。不加g默認為非全局匹配,只匹配第一個符合要求的字符串;

eg:"www".replace(/w/ ,"#"); -->#ww;
    "www".replace(/w/g,"#"); -->###;

② i:忽略大小寫。不加i,默認要求大寫也匹配;

eg: "aAa".replace( /A/ ,"#"); -->a#a;
    "aAa".replace( /A/i ,"#"); -->#Aa;
    "aAa".replace( /A/gi ,"#"); -->###;

③ m:多行匹配模式。不帶m,則一個字符串只有一個開頭,一個結(jié)尾。帶m后,如果字符串分為多行,則每行都有一個開頭和結(jié)尾。

eg: `abc`#bc
     abc`.replace(/^a/g,"#") --> abc`
=
     `abc``#bc
     abc`.replace(/^a/gm,"#") --> #bc`

[如何寫多行字符串?]

>>>普通字符串中,插入\n表示換行。"abc\nabc"
>>>ES6中,允許使用反引號`包裹字符串。反引號包裹的字符串中,會保留空格與回車。
  eg: `abc
    abc`

4、正則表達式的常用方法

① test():檢測一個字符串,是否符合正則表達式的驗證。返回true或false;
  eg: /white/.test("whitewhitewhite"); --> true

② exec():檢測一個字符串,是否符合正則表達式的驗證。如果驗證成功,返回結(jié)果數(shù)組;如果驗證失敗,返回null;

結(jié)果數(shù)組中:

index屬性:表示從字符串的第幾個字符,開始符合正則要求

input屬性:返回完整的被檢索的字符串

下標第0個:表示符合整個正則表達式的那部分字符串

下標的第一個到第n個:表示符合正則的第一個到第n個子表達式的部分。子表達式,就是正則中的()。也就是,正則中有幾個(),結(jié)果數(shù)組中就有幾個下標。

eg: /12(3)(4)5/.exec("aaa12345");
      [
        0:12345;
        1:3;
        2:4;
        index:3;
        input:"aaa12345";
        length:3
      ]

5、正則表達式的基本案例

①驗證郵政編碼

簡單談?wù)凧S中的正則表達式結(jié)果為:簡單談?wù)凧S中的正則表達式

②驗證手機號

簡單談?wù)凧S中的正則表達式結(jié)果為:簡單談?wù)凧S中的正則表達式

③年齡在0-120歲之間

簡單談?wù)凧S中的正則表達式

④域名:http://xxxxx.xxxx.com

var http = /^(http|https):\/\/([A-Za-z0-9\-]+\.){2}[A-Za-z]{2,4}(\.[A-Za-z]{2,4})?$/;

⑤驗證IP地址(0.123.11.255)

簡單談?wù)凧S中的正則表達式

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中的正則表達式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI