No se si te servirá esto:
Código PHP:
function pasarXML(){
var nodos = new Array();
var xmlstr = '<mixml><nodo>hola</nodo><nodo>adios</nodo></mixml>'
var expreg = /([a-z]+)/g;
while(expreg.test(xmlstr)){
nodos.push(RegExp.$1);
}
/*
Array nodos: mixml,nodo,hola,nodo,nodo,adios,nodo,mixmail
*/
root = document.createElement(nodos[0]);
var i=1;
while(i<nodos.length){
if(i != (nodos.length -1)){
nodo = document.createElement(nodos[i]);
i++;
texto = document.createTextNode(nodos[i]);
nodo.appendChild(texto);
root.appendChild(nodo);
}
i += 2;
}
}
Funciona siempre que no haya ninguna etiqueta vacia, del estilo a:
He supuesto que siempre tendrá algun valor.
Si tienes alguna duda preguntala.
Saludos