J'ai une chaîne XML simple, qui est plus ou moins toujours la même. Je préfère éviter d'utiliser un analyseur XML pour un si petit bout de code, et je pense que Regexp pourrait aider.Ruby Regexp pour extraire des éléments spécifiques dans une chaîne XML
La chaîne XML ressemble à:
<?xml version="1.0"?>
<methodCall>
<methodName>weblogUpdates.extendedPing</methodName>
<params>
<param>
<value>Official Google Blog</value>
</param>
<param>
<value>http://googleblog.blogspot.com/</value>
</param>
<param>
<value>http://googleblog.blogspot.com/</value>
</param>
<param>
<value>http://googleblog.blogspot.com/atom.xml</value>
</param>
</params>
</methodCall>
Je veux extraire les valeurs de chaque param (et maintenir l'ordre).
je suis venu avec /<value>(.*)<\/value>/xi
mais juste macthes la première valeur:/
S'il vous plaît, arrêtez de diffuser ce mème: analyser XML avec une expression régulière n'est pas "notoirement difficile et sujet aux erreurs", c'est simplement impossible. Et pas impossible dans le sens de "impossible à obtenir", mais mathématiquement impossible.En fait, à peu près tous les étudiants de CS sur la planète entière auront à un moment de leur carrière prouvé cette impossibilité dans une tâche de devoirs ou autre. –
@ Jörg - J'ai peur que vous et moi parlions de deux choses très différentes. L'impossibilité mathématique est très différente de l'impossibilité réelle (faute d'une meilleure phrase). Est-il impossible d'utiliser des expressions régulières sur XML? Non, bien sûr que non - il est tout à fait possible d'utiliser des expressions régulières pour pirater une solution qui fonctionnera la plupart du temps. Je comprends votre point de vue (et je suis d'accord avec vous en principe), mais cela n'a pas beaucoup d'influence sur une discussion pratique comme celle-ci. –