const https = require('https'); const url = "https://www.wms.nrw.de/wms/wms_nw_regionalplan?SERVICE=WMS&REQUEST=GetCapabilities"; https.get(url, (res) => { let data = ''; res.on('data', chunk => data += chunk); res.on('end', () => { // Match Layer Name and Title const regex = /]*>([\s\S]*?)<\/Layer>/g; // We need to parse recursively or just look for Name/Title pairs close to each other // Simple scan const layers = []; const lines = data.split(/>\s*(.*?)<\/Name>/g; const titleRe = /(.*?)<\/Title>/g; let m; while ((m = nameRe.exec(data)) !== null) { names.push(m[1]); } while ((m = titleRe.exec(data)) !== null) { titles.push(m[1]); } console.log("Names:", names); console.log("Titles:", titles); }); });