JS_正則表達式_獲取指定字符之后指定字符之前的字符串


一個常見的場景,獲取:標簽背景圖片鏈接:

如字符串:var bgImg = "url(\"https://img30.360buyimg.com/sku/jfs/t26203/262/100869187/204098/1d1479e9/5b84b80bNf39db45f.jpg\")";

 

腳本:

備注:以下腳本直接寫在JS里,語法檢查失敗,但是可以直接在谷歌的控制台正常使用,可能JS還不支持該寫法:/(?<=X)/。 不過不影響使用,也可以這樣寫: new RegExp("(?<=X)");

var backgroundImageRegex=/(?<=url\(").+(?="\))/;

var matchResult=bgImg.match(backgroundImageRegex);
if(matchResult.length>0){
    alert(matchResult[0]);
}

 

划重點:

0-特殊字符:()"    這三個需要轉義

1-獲取指定字符串之后:  (?<=指定字符串)

2-獲取指定字符串之前: (?=指定字符串)

 

該匹配規則在正則表達式里叫:斷言匹配,可見參考資料如下

 

參考資料:

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Regular_Expressions

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM