簡體   English   中英

正則表達式提取 src 屬性

[英]Regex to extract src attribute

我試圖匹配每個以 jpg 或 png 或 gif 結尾的 src 屬性,並在其中提取 src 字符串。 我不確定我想出的以下正則表達式是否正確,但它確實為我提供了帶有地址的 src 屬性。 我的問題與以下正則表達式的可能問題以及我如何僅提取 src 字符串有關。

/src\s*=\s*(["'][^"']+(jpg|png|gif)\b)/g;

首先,您的正則表達式嘗試做的太多了。 首先執行以下操作:

function img_find() {
    var imgs = document.getElementsByTagName("img");
    var imgSrcs = [];

    for (var i = 0; i < imgs.length; i++) {
        imgSrcs.push(imgs[i].src);
    }

    return imgSrcs;
}

現在,您要處理的正則表達式要少得多。 (沒有空格、單引號和雙引號等等。)

請閱讀本文,不要(除了非常簡單的情況)嘗試使用正則表達式來解析原始 HTML :)

因此,給定一組圖像源,您只需要選擇jpg / png / gif圖像源:

/(jpg|png|gif)$)/i;

然后獲取他們的文件名,沒有擴展名:(有很多方法可以做到這一點;這只是我拼湊起來的一件事......)

/(.*)\.[^.]+)/;

暫無
暫無

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

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