Sélection d'une classe CSS avec XPath
Vous essayez de sélectionner une classe CSS nommée .date à l'aide de XPath. Cependant, votre code ne fonctionne pas correctement. Pour comprendre pourquoi et trouver une solution, entrons dans les subtilités.
XPath n'a pas d'équivalent natif pour sélectionner une classe CSS. Au lieu de cela, vous devez utiliser une solution de contournement :
//*[contains(concat(" ", normalize-space(@class), " "), " foo ")]
Cette expression filtre les éléments qui ont le nom de classe souhaité, garantissant qu'il correspond précisément et qu'il n'est pas seulement partiellement présent. La fonction normalize-space supprime les espaces de début et de fin.
Évitez les approches incorrectes telles que :
//*[@class="foo"]
Cette expression ne correspond qu'aux éléments avec un seul nom de classe et est sensible à la casse.
//*[contains(@class, "foo")]
Cette expression fait correspondre les éléments avec n'importe quel nom de classe incluant « foo », même s'il fait partie d'une classe plus grande. list.
En résumé, pour sélectionner une classe CSS exacte avec XPath, utilisez l'expression susmentionnée. Cette méthode imite avec précision le comportement du sélecteur de classe CSS et filtre efficacement les éléments souhaités.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!