2017-09-27 6 views
1

Ich versuche, alle URL-Strings aus einer langen XML-Datei zu extrahieren, die URL, die ich brauche, ist zwischen Lok-Elementen, und ich möchte alles andere verwerfen.Suchen/Ersetzen extrahieren Zeichenfolgen zwischen Elementen

<loc>https://www.website.com/1</loc> 

So zum Beispiel würde ich das nehmen:

<url> 
    <loc>https://www.website.com/1</loc> 
    <lastmod>2017-04-01T08:18:42+00:00</lastmod> 
    <changefreq>daily</changefreq> 
    <priority>1.0000</priority> 
    </url> 

    <url> 
    <loc>https://www.website.com/2</loc> 
    <lastmod>2017-04-01T08:18:42+00:00</lastmod> 
    <changefreq>daily</changefreq> 
    <priority>1.0000</priority> 
    </url> 

    <url> 
    <loc>https://www.website.com/3</loc> 
    <lastmod>2017-04-01T08:18:42+00:00</lastmod> 
    <changefreq>daily</changefreq> 
    <priority>1.0000</priority> 
    </url> 

Und Rückkehr dies:

https://www.website.com/1 
https://www.website.com/2 
https://www.website.com/3 

Irgendwelche Ideen? Vielen Dank im Voraus

+0

Wäre es nicht ein einfaches ' (. +) <\/loc>' genügen? https://regex101.com/r/NWP4bQ/1/ – miqid

Antwort

1
var regex = /https.*(?=<\/loc>)/gm; 
str.match(regex) 

Dies wird ein Array zurück, das alle die Spiele

Verwandte Themen