1. 程式人生 > >14.JS-正則表示式的反向引用

14.JS-正則表示式的反向引用

選擇字元:|

            com|cn|edu   ---  選擇其中一個(含有其中一個就能匹配成功)


子表示式:用()包圍的就是子表示式

            str = "((/d)(/w))"

            第一個子表示式:((\d)(\w))

            第二個子表示式:(\d)

            第三個子表示式:(\w)

            子表示式:以第一個出現的 ( 為第一個表示式

        
        捕獲:將匹配到的子表示式儲存在RegExp物件中

            RegExp.$1:儲存第一個子表示式

            RegExp.$2:儲存第二個子表示式

            RegExp.$3:儲存第三個子表示式
            ...


        反向引用:呼叫捕獲到的值

            \1:指向RegExp.$1

            \2:指向RegExp.$2

            \n:指向RegExp.$n
    
例子:   

    
匹配連續相同的三個數字
        

var str = 'ooo111ooo222ooo333ooo123';

var reg = /(\d)\1\1/g;

var result = str.match(reg);

console.log(result);//[111,222,333]


匹配型別為abab的數字
        

var str = 'ooo1212ooo2323ooo3434ooo1234';

var reg = /(\d)(\d)\1\2/g;// \d匹配數字,\1對應的是第一個表示式(\d),\2對應的是第二個表示式(\d),g是全域性匹配

var result = str.match(reg);

console.log(result);


匹配標籤內的內容
      

var str = 'ooo<div>hello world!</div>234';

var reg = /<(\w+).*<\/\1>/g;

var result = str.match(reg);

console.log(result);

分析
 \w:  查詢字母、數字、下劃線
 \w+:  匹配查詢至少一個\w的字串
.:  查詢單個字元除了換行符和行結束符
.*:  匹配查詢至少零個.的字串
\/:  因為/為特殊字元,所以需要用轉義符\
\1:  反向引用(\w+)
 

相關推薦

14.JS-表示式反向引用

選擇字元:|             com|cn|edu   ---  選擇其中一個(含有其中一個就能匹配成功) 子表示式:用()包圍的就是子表示式             str = "((/d)(/w))"             第一個子表示式:((\d)(

js表示式的分組和反向引用

 javascript的正則反引用是通過RegExp.$1,RegExp.$2反向引用的。 例子: var reg = /(/w+)~(/w+)/; var textt="dddd~123"; if(reg.test(textt)){ console.log(Reg

js表示式語法

正則表示式規則 普通字元 字母、數字、漢字、下劃線、以及後邊章節中沒有特殊定義的標點符號,都是”普通字元”。表示式中的普通字元,在匹配一個字串的時候,匹配與之相同的一個字元。 舉例1:表示式 “c”,在匹配字串 “abcde” 時,匹配結果是:成功;匹配到的內容是:”c”;匹配到

表單驗證JS表示式

在表單驗證中,使用正則表示式來驗證正確與否是一個很頻繁的操作,本文收集整理了15個常用的JavaScript正則表示式,其中包括使用者名稱、密碼強度、整數、數字、電子郵件地址(Email)、手機號碼、身份證號、URL地址、 IPv4地址、 十六進位制顏色、 日期、 QQ號碼、 微訊號、車牌號、中文正則。 1

js表示式中關於零寬斷言的奇異現象

碰到一個特別的需求,就是有一段Sql Server 的 SQL片段,內容大概就是所有JOIN表的集合,要求把這個SQL片段分割成陣列,每個元素就是包含單個表的字串。 例如: SQL = INNER JOIN Sale b ON 1=1 LEFT JOIN OutStock c

js表示式驗證字串只包括大小寫字母下劃線和-

背景說明 在之前的開發過程中為了校驗一個欄位只含有大小寫字母,下劃線和-花費了不少力氣才搞定,想著趕快寫一篇部落格來記錄下來,日後開發一定會遇到!! 程式碼實現 首先定義一個變數用來存放驗證字串的正則表示式:var regex=/^[A-Za-z0-9_\-]+$/ig;

根據表示式反向生成對應的字串現有工具(包)總結

為什麼會調研這塊知識點?在做測試的時候,資料的自動生成,做自動mock都會用到按規則自動生成資料,所以了~~ 其中有部分是前輩們總結的直接拿來了,多種語言的,但我本身關注更多的是java、python和go,其他語言備用 總結如下: python Exrex, Pyt

JS表示式:量詞的貪婪模式與惰性模式的區別

在說明貪婪模式與惰性模式區別之前,說明一下JS正則基礎: 1.寫法法基礎: regexObj.test(str);例如/123/.test(‘123’); 2.基本語法 錨點:匹配一個位置 ^表示起始位置;/^a/.test(‘str’);表示是否以a開頭

js表示式擷取兩個字串中間的字串

一個最常用的場景 擷取兩個字串中間的字串   var str = "iid0000ffr";     var substr2 = str.match(/id(\S*)ff/);     alert(substr2); 你會發現逗號後面是你要的

js表示式(2)

找到以某個字串開頭的字串 var myReg=/^(abc)/gim; 如果不加m,那麼只找一行,而加了m可以找到每行中以該字串開頭的匹配文字。 如: abcsfsdfasd7890hklfahskfkaluiop7890-7890782ksdlafkasdnfklsdnf;lsabc

js表示式替換(web作業)

運用正則表示式匹配“Paul;Puala,Pauline,paul,Paul”中的所以Paul,並將其替換成Ringo 程式碼如下: <!DOCTYPE html> <html> <head> <title>替換&

js表示式菜鳥例項基礎

正則表示式表單驗證例項: /是否帶有小數/ function isDecimal(strValue ) { var objRegExp= /^\d+.\d+$/; return objRegExp.test(strValue); } /*校驗是否中文名稱組成 */ function is

JS表示式之--?:

使用形如(?:pattern)的正則就可以避免儲存括號內的匹配結果。 ?:匹配冒號後的內容但是不獲取匹配結果;不進行儲存供以後使用  下面這個正則是為了實現只匹配以b或者c開頭的字串,一直匹配到換行字元,但是。可以使用“\1”來反向引用這個括號裡的子 正則表示式所匹配的內容。而且exec方法也會

js表示式之match函式

功能:使用正則表示式模式對字串執行查詢,並將包含查詢的結果作為陣列返回  函式格式:stringObj.match(rgExp) stringObj為字串必選 rgExp為正則表示式必選項  返回值:如果能匹配則返回結果陣列,如果不能匹配返回null  使用方法:&nb

Js 表示式驗證

手機號碼驗證 130,131,132,133,134,135,136,137,138,139,147,150,151,152,153,155,156,157,158,159,177,173180,181,182,185,186,187,188,189 function ch

常用js表示式大全

常用js正則表示式大全  一、校驗數字的js正則表示式  1 數字:^[0-9]*$ 2 n位的數字:^\d{n}$ 3 至少n位的數字:^\d{n,}$ 4 m-n位的數字:^\d{m,n}$ 5 零和非零開頭的數字:^(0|[1-9][0-9

js表示式驗證價格

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <me

值得收藏的八個常用的js表示式

 開發中如果有input輸入框,難免就要寫正則表示式,因此在這裡總結了一些常見常用的正則表示式的書寫方法,希望會大家有所幫助; 附圖:   一.手機號碼 $(document).ready(function(){ //判斷輸入手機號碼是否正確

14-Requests+表示式爬取貓眼電影

'''Requests+正則表示式爬取貓眼電影TOP100''''''流程框架:抓去單頁內容:利用requests請求目標站點,得到單個網頁HTML程式碼,返回結果。正則表示式分析:根據HTML程式碼分析得到電影的名稱、主演、上映時間、評分、圖片連結等資訊。儲存至檔案:通過檔案的形式儲存結果,每一部電影一個結

jmeter表示式提取 引用

jmeter正則表示式token提取 例: 新增正則 配置   token正則表示式:"token":"(.+?)" 模板:$1$    新增資訊頭管理器進行配置 需要token得地方輸入 ${token} 就可以了   如果獲取 返