XPATH: Vérifier si un nœud xml contient des caractères spécifiques ou des chaînes de caractères
Imaginer ce fichier XML (désolé pour les malades exemple!!)
<DOC>
<Test>
<Name>1 vs 100 Pre pre History</Name>
<Type>Dinasors</Type>
</Test>
<Test>
<Name> 1 vs 100 Post moderns</Name>
<Type>Aliens</Type>
</Test>
</Doc>
L'idée est de retour le Type de la valeur, En vérifiant si le Nom de nœud contient un caractère spécifique ou chaîne. Par exemple: je veux une Requête XPath comme:
/Doc//Test[contains "Pre" and "History" and 1]/Type
Qui est de vérifier si Test contient des "Pré" et "Histoire" et le numéro 1, Ce sera la requête xpath? Alo j'aime cette requête pour ne pas être SENSIBLE à la casse.
Grâce.
- Sommes-nous parler de Xpath 1.0 ou 2.0?
Vous devez vous connecter pour publier un commentaire.
Je pense que cela devrait fonctionner (ne l'ai pas testé):
Mais qui est sensible à la casse. Si vous voulez qu'il casse, alors vous voudrez peut-être avoir un coup d'oeil à cette question ou cette question: vous devez utiliser
translate
pour convertir votreName
de bas-de-casse (ou majuscules) et ensuite de match.//
opérateur n'est pas nécessaire. En outre, il pourrait être de réduire à/Doc/Test[Name[contains(.,'Pre')][contains(.,'History'][contains(.,'1')]]/Type
il fonctionne lorsque: