簡體   English   中英

查找字符串中帶有正則表達式的所有背景URL

[英]Find all background urls with regular expression in a string

我有以下字符串:

<div style="background-image:url(some src); background-color:some color;">
   <div style="background-image:url(some src); background-color:some color;">  </div>
</div>

我需要在此字符串中找到所有背景圖片網址。 現在,我有以下正則表達式:/ /background-image.*[);]/g

但是它需要背景圖像和背景顏色,並且只給我一次而不是兩次。

正則表達式解決方案:

將您的正則表達式替換為:

/(background-image.*?(?:;))/g
  • /(分隔符和捕獲組
  • background-image匹配字符串中的相同內容
  • .*? 匹配任何字符(換行符除外)
  • (?:非捕獲組
  • ; 配字; 從字面上看
  • g (修飾符)全局。 所有比賽(在第一個比賽中不返回)

演示版


 var str = '<div style="background-image:url(some src); background-color:some color;">\\ <div style="background-image:url(some src); background-color:some color;"> </div>\\ </div>'; var result = /(background-image.*?(?:;))/g.exec(str); document.write(result[0]+"<br />"); document.write(result[1]); 


jQuery解決方案:

選擇style屬性(換句話說就是解析HTML代碼) ,然后選擇它的特定屬性(在本例中為background-image

 var str = '<div style="background-image:url(some src); background-color:some color;">\\ <div style="background-image:url(some src); background-color:some color;"> </div>\\ </div>'; alert($('div', str).attr("style").split(';')[0]); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM