Heim >Backend-Entwicklung >PHP-Tutorial >Wie wähle ich eine CSS-Klasse mit XPath aus?
So wählen Sie eine CSS-Klasse mit XPath aus
Problem:
Sie möchten auswählen eine bestimmte Klasse namens „.date“ in einem HTML-Dokument mithilfe von XPath, aber Ihre Versuche waren erfolgreich erfolglos.
Code:
@$doc = new DOMDocument(); @$doc->loadHTML($html); $xml = simplexml_import_dom($doc); //Simplify XPath $images = $xml->xpath('//[@class="date"]');
Lösung:
Im Gegensatz zu CSS unterstützt XPath keine nativen Klassenselektoren. Es gibt jedoch eine Problemumgehung:
Korrekte XPath-Syntax:
//*[contains(concat(" ", normalize-space(@class), " "), " foo ")]
Dieser Ausdruck stimmt mit jedem Element überein, dessen Klassenattribut die Teilzeichenfolge „foo“ enthält.
Erklärung:
Beispiel:
<div>
Die XPath-Abfrage wählt das Element mit der Klasse „date“ korrekt aus und ignoriert das Element „foobar“.
Falsch Ansätze:
Das obige ist der detaillierte Inhalt vonWie wähle ich eine CSS-Klasse mit XPath aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!