Domanda

Sto cercando di analizzare un newsml (http://www.iptc.org/std/newsml-g2/2.7/examples/listing2_newsml-g2_complete.xml) con querypath. Ma ho problemi con i punti in alcuni elementi, come <body.head>.

In alcuni plugin Firefox QueryPath sono in grado di sfuggire al punto con una retroscena, ma nella libreria PHP Pear questo non funziona.

Qualche idea?

(Sto cercando una soluzione all'interno di QueryPath, non per soluzioni alternative)

È stato utile?

Soluzione

In passato, ho usato l'estensione PHP ordinata (http://us3.php.net/manual/en/book.tidy.php) per ripulire HTML/XML prima di passarlo in QueryPath.

L'XML che hai fatto riferimento sopra è piuttosto pulito e anche piuttosto piccolo.

Se l'unico problema è i punti nei nomi degli elementi, probabilmente anche la preelaborazione con un'espressione regolare. E sarebbe la soluzione più veloce. Immagino che potresti fare un preg_replace('/<body\./g', '<body-', $xml) e farlo riparare. (Sostituirebbe body.content insieme a body-content e così via.)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top