cs_RMI
Messages postés305Date d'inscriptionvendredi 18 juillet 2003StatutMembreDernière intervention 2 août 2010
-
28 juin 2010 à 09:27
cs_coq
Messages postés6351Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014
-
29 juin 2010 à 19:52
Bonjour,
Est il possible d'utiliser des expressions régulières dans des requêtes XPath ?
Dans mon cas, je souhaite trouver les nodes qui ont un attribut nommé Id finissant par _gc
cs_coq
Messages postés6351Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 28 juin 2010 à 23:42
Bonjour,
XmlElement.SelectSingleNode repose à l'heure actuelle sur XPath 1.0, donc la fonction ends-with n'existe pas.
Dans ce cas présent, on peut utiliser une combinaison de substring et string-length.
Ca donnerait quelque chose de ce genre (dans l'optique d'une requête paramétrée) :
Zones/Zone[substring(@id, string-length(@id) - string-length('_dr') + 1)='_dr']
Ou tout simplement, en partant du principe que les valeurs sont fixées dans la requête :
Zones/Zone[substring(@id, string-length(@id) - 2)='_dr']
En n'oubliant pas le commentaire qui va bien pour expliquer d'où sort le '2', pour la maintenance.
Tu pourras même utiliser la fonction ends-with si tu utilises le XPath 2.0.
Quoi qu'il en soit, tu devrait te débrouiller facilement sans cette méthode et juste avec le tutorial de Bidou.
Bon développement,
Billou_13
--------------------------------------------------------------------
Connaître la réponse est une chose, savoir pourquoi en est une autre
---------------------