正規表示式(RegExp)

2022-08-10 01:36:18 字數 1986 閱讀 9500

前言:先來了解一下基礎知識。再細說正規表示式~

轉義字元會將與之相鄰的字元轉換含義。

例如說,希望在乙個字串中輸出 「 號,那麼就可以使用在雙引號前加入 \ ,這樣就能將雙引號輸出。

通常情況下,我們會用到這樣幾個轉義字元

\n 字串換行符,  \r 代表文字行結束,  回車用轉義字元表示就是 \r\t  ,\t 代表製表符,是 tabel 縮寫。

首先說作用: 是匹配特殊字元或有特殊搭配原則的字元的最佳選擇。

接著來看下如何使用正規表示式,它有幾種建立方式,我們一一來看下。

1. 直接量的方式建立

var reg = /abc/;   // 這裡規定了表示式的格式, /abc/i  表示可以忽略大小寫  

var str = 'abc';

reg.test(str);

//true

2. 建構函式的方式建立

var reg = new regexp("abc","m");  //

第乙個引數寫規則,第二個是可選項,傳入可以是任一屬性 i m g,也可以自由組合

var str = "abcd"; //

true

3. 建構函式方式建立的另一種表達(加 new 、不加 new)

var reg = /abc/i;

var reg1 = new regexp(reg); //

此時是利用原有的模式建立了乙個新的正規表示式,雖然相同但完全獨立。

var reg = /abc/i;

var reg1 = regexp(reg); //

如果不加 new,則返回的只是這個原有澤政表示式的乙個引用,並不會建立新的正規表示式。

var reg = /abc/i;   //

忽略大小寫

var str = "abc" //

true

var reg = /abc/g; //

進行全域性匹配

var str2 = "abcabcabcabc" //

['abc','abc','abc','abc'] 不加 g 時,陣列中只會出現乙個字串

var reg = /abc/m; //

進行多行匹配

//下面是一些偽**

ifvar reg = /^a/g; //

表示匹配以a開頭的所有字元

var str = "abc/na"; //

['a'] 雖然換行了,但是修飾符 g 並不認為這是另起一行了,依然不會識別。

ifvar reg = /^a/gm; //

表示匹配以a開頭的所有字元

var str = "abc/na"; //

['a','a'] 這時就會認識這是乙個換行符了,就能進行匹配

表示式中的標準可以是多個表示式,這是規定了每一位上的匹配區間

[abc] : 查詢方括號之間的任意字元

[^abc] : 查詢不在方括號之間的任意字元

[0-9] : 查詢0-9之間的任意數字

一種偷懶的寫法: [0-9a-z] : 這裡包括了0-9a-z的所有區間

關於 ^ ,在表示式中表示非,在表示式外表示從**開始。

(abc | bcd) : 這裡也是表示匹配區間,但必須是abc 或者 bcd

.   : 匹配除了換行符以外的所有字元

\w :匹配所有的單詞字元以及下劃線

\w : 與\w正好取反

\s = (\v \r \f \n \t  空格): 匹配空白字元

\v \r \f \n \t  : 這裡需要注意,使用這些匹配元字元的時候,必須是字串中真實存在的,不能視覺上存在的。

等等......

表示式中也可以寫元字元拼接

n+ : 表示n可以匹配一次到多次

n*  : 表示n可以匹配0次到多次

n? : 表示n可以匹配0次或一次

RegExp正規表示式

什麼是 regexp?regexp 是正規表示式的縮寫。當您檢索某個文字時,可以使用一種模式來描述要檢索的內容。regexp 就是這種模式。簡單的模式可以是乙個單獨的字元。更複雜的模式包括了更多的字元,並可用於解析 格式檢查 替換等等。您可以規定字串中的檢索位置,以及要檢索的字元型別,等等。var ...

正規表示式 RegExp()

字串處理 split 分割字串 charat 0 提取某個字元 substring 1,5 獲取字串 search a 返回位子,否則 1 正規表示式 字串匹配工具 str.match d g 所有匹配以陣列的形式返回 風格 風格 var re new regexp a var str abcdef...

正規表示式REGEXP

正規表示式 regular expression,regexp 元字元 匹配任意單個字元 匹配指定範圍內的任意單個字元 匹配指定範圍外的任意單個字元 字元集合 digit lower upper punct space alpha alnum 匹配次數 貪婪模式 匹配其前面的字元任意次 a,b,ab...