js正則匹配出所有圖片及圖片地址src的方法
本文實(shí)例講述了js正則匹配出所有圖片及圖片地址src的方法。分享給大家供大家參考。具體分析如下:
有很多時候我們需要用到文章里面的圖片,而且主要是用到它的圖片地址,這個時候我們需要通過正則匹配出圖片標(biāo)簽,然后做到我們需要的數(shù)據(jù)
平時也沒怎么用正則,一不學(xué)就忘,最近項(xiàng)目需要,然后又去goole了,好亂!一搜一大堆,也不是我想要的,最后把自己留一個已被后用:
實(shí)現(xiàn):通過js正則匹配出所有圖片及所有圖片地址src。
思路:1.匹配出圖片img標(biāo)簽(即匹配出所有圖片),過濾其他不需要的字符
從匹配出來的結(jié)果(img標(biāo)簽中)循環(huán)匹配出圖片地址(即src屬性)
代碼:(你可以復(fù)制到本地試試)
<script type="text/javascript">
//思路分兩步:作者(yanue).
//1,匹配出圖片img標(biāo)簽(即匹配出所有圖片),過濾其他不需要的字符
//2.從匹配出來的結(jié)果(img標(biāo)簽中)循環(huán)匹配出圖片地址(即src屬性)
var str = "this is test string <img src=\"http:yourweb.com/test.jpg\" width='50' > 123 and the end <img src=\"所有地址也能匹配.jpg\" /> 33! <img src=\"/uploads/attached/image/20120426/20120426225658_92565.png\" alt=\"\" />"
//匹配圖片(g表示匹配所有結(jié)果i表示區(qū)分大小寫)
var imgReg = /<img.*?(?:>|\/>)/gi;
//匹配src屬性
var srcReg = /src=[\'\"]?([^\'\"]*)[\'\"]?/i;
var arr = str.match(imgReg);
alert('所有已成功匹配圖片的數(shù)組:'+arr);
for (var i = 0; i < arr.length; i++) {
var src = arr[i].match(srcReg);
//獲取圖片地址
if(src[1]){
alert('已匹配的圖片地址'+(i+1)+':'+src[1]);
}
//當(dāng)然你也可以替換src屬性
if (src[0]) {
var t = src[0].replace(/src/i, "href");
//alert(t);
}
}
</script>
PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:
JavaScript正則表達(dá)式在線測試工具:
http://tools.jb51.net/regex/javascript
正則表達(dá)式在線生成工具:
http://tools.jb51.net/regex/create_reg
希望本文所述對大家的javascript程序設(shè)計(jì)有所幫助。
- js正則表達(dá)式之$1$2$3$4$5$6$7$8$9屬性,返回子匹配的結(jié)果
- js匹配網(wǎng)址url的正則表達(dá)式集合
- JS正則表達(dá)式匹配檢測各種數(shù)值類型(數(shù)字驗(yàn)證)
- String字符串匹配javascript 正則表達(dá)式
- JavaScript正則表達(dá)式匹配 div style標(biāo)簽
- js實(shí)現(xiàn)正則匹配中文標(biāo)點(diǎn)符號的方法
- js正則表達(dá)式匹配數(shù)字字母下劃線等
- js使用正則子表達(dá)式匹配首字母與尾字母相同單詞的方法
- js 正則表達(dá)式學(xué)習(xí)筆記之匹配字符串
- javascript正則匹配漢字、數(shù)字、字母、下劃線
- 解決js正則匹配換行問題實(shí)現(xiàn)代碼
- JS正則子匹配實(shí)例分析
相關(guān)文章
原生JavaScript實(shí)現(xiàn)的簡單放大鏡效果示例
這篇文章主要介紹了原生JavaScript實(shí)現(xiàn)的簡單放大鏡效果,涉及javascript事件響應(yīng)及頁面元素屬性動態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-02-02
JavaScript實(shí)現(xiàn)單英文金山打字通
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)單英文金山打字通,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-06-06
使用layui的router來進(jìn)行傳參的實(shí)現(xiàn)方法
今天小編就為大家分享一篇使用layui的router來進(jìn)行傳參的實(shí)現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09
JavaScript面向?qū)ο笾R串結(jié)(讀JavaScript高級程序設(shè)計(jì)(第三版))
最近在看JavaScript高級程序設(shè)計(jì)(第三版),面向?qū)ο笠徽?0多頁,來來回回看了三五遍,每次看的收獲都不一樣2012-07-07
JavaScript?進(jìn)階問題列表(各種js代碼段1-65)
從基礎(chǔ)到進(jìn)階,測試你有多了解?JavaScript,刷新你的知識,或者幫助你的?coding?面試!?:muscle:?:rocket:?我每周都會在這個倉庫下更新新的問題2024-11-11
淺談javascript的url參數(shù)parse和build函數(shù)
下面小編就為大家?guī)硪黄獪\談javascript的url參數(shù)parse和build函數(shù)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-03

