1
ist Folgendes möglich in einem XPath-Ausdruck (siehe Beispiel unten):XPath: alle Wählen Sie eine Knoten und alle B-Knoten, die nicht innerhalb eines Ein Knoten sind
Wählen Sie alle (span-Tags der Klasse msg) UND Alle ((img-Tags, die ein nicht-leeres alt-Attribut) UND (nICHT in einem span-Tag der Klasse msg) haben sie)
Vereinfachtes Beispiel:
<span class="msg">Message text A</span>
<img alt="" />
<span class="msg">Message text B <img alt="text A" /></span>
<span class="err">Error text C <img alt="text B" /></span>
<img alt="text C" />
<span class="err">Error text D</span>
sollte Der resultierende Knotensatz enthalten:
<span class="msg">Message text A</span>
<span class="msg">Message text B <img alt="text A" /></span>
<img alt="text B" />
<img alt="text C" />
Danke, das funktioniert perfekt! Ich habe das erste "not (Vorgänger :: ..." entfernt, da das Material keine msg span innerhalb msg spans enthalten kann. Es speicherte zwei Iterationen durch die gleichen Daten und beschleunigte so die Dinge. – barry
OK - Ich habe einige Klammern falsch gezählt; -p –