Auswählen einer CSS-Klasse mit XPath
Sie versuchen, mit XPath eine CSS-Klasse namens .date auszuwählen. Ihr Code funktioniert jedoch nicht ordnungsgemäß. Um zu verstehen, warum und eine Lösung zu finden, wollen wir uns mit den Feinheiten befassen.
XPath verfügt über kein natives Äquivalent für die Auswahl einer CSS-Klasse. Stattdessen müssen Sie eine Problemumgehung verwenden:
//*[contains(concat(" ", normalize-space(@class), " "), " foo ")]
Dieser Ausdruck filtert nach Elementen, die den gewünschten Klassennamen haben, und stellt so sicher, dass er genau übereinstimmt und nicht nur teilweise vorhanden ist. Die Funktion „normalize-space“ entfernt führende und nachfolgende Leerzeichen.
Vermeiden Sie falsche Ansätze wie:
//*[@class="foo"]
Dieser Ausdruck stimmt nur mit Elementen mit einem einzelnen Klassennamen überein und unterscheidet zwischen Groß- und Kleinschreibung.
//*[contains(@class, "foo")]
Dieser Ausdruck gleicht Elemente mit jedem Klassennamen ab, der „foo“ enthält, auch wenn dieser Teil einer größeren Klasse ist Liste.
Um eine genaue CSS-Klasse mit XPath auszuwählen, verwenden Sie zusammenfassend den oben genannten Ausdruck. Diese Methode ahmt das Verhalten des CSS-Klassenselektors genau nach und filtert effektiv nach gewünschten Elementen.
Das obige ist der detaillierte Inhalt vonWie kann ich mit XPath eine bestimmte CSS-Klasse auswählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!