2016-05-24 2 views

Antwort

0

Wenn die XML als String geladen wird, können Sie reguläre Ausdrücke verwenden, um den Wert zwischen d: und m: anzupassen.

var str = xml; 
var matches = xml.match(/d:(.*)\sm:/); 

// get the first match group 
console.log(matches[1]); // BC_1MONTH 
+0

Ich dachte, mit regulären Ausdrücken xml – 2426021684

+0

@ 2426021684 war schlecht zu analysieren: es hängt von der XML. RSS ist in Ordnung, aber andere Aromen sind ein No-Go. Es kommt auf sich wiederholende verschachtelte Tag-Namen an, die RX nicht mag. Wenn ein Tag niemals innerhalb eines Tags mit seinem eigenen Namen nistet, kann RegExp die Daten aus der XML-Eingabe zuverlässig analysieren. Wenn der XML-Code Validitätsprobleme aufweist, kann RegExp möglicherweise fehlschlagen oder im Hintergrund versagen, was ein echter Doc-Parser nicht tun würde. – dandavis

+0

Beachten Sie auch, dass er das XML hier überhaupt nicht analysiert, die Struktur ist nicht bestimmt, nur Muster passt, so ist der Code bei gültigem XML in Ordnung. es könnte jedoch viel genauer sein. Ich mag '/ dandavis

0

Versuchen JS .split metchod:

var str='<d:BC_1MONTH m:type="Edm.Double">0.11</d:BC_1MONTH>'; 
str= str.split(" "); 
str= str[0].split(":"); 
console.log(str[1]); 
Verwandte Themen