Ich habe den folgenden XPath, um Attribute der Klassenspanne zu vergleichen:
//span[@class='amount']
Ich möchte alle Elemente zusammenbringen, die das Klassenattribut "Betrag" haben, aber auch andere Klassen haben können. Ich dachte, ich könnte das tun:
//span[@class='*amount*']
aber das funktioniert nicht ... wie kann ich das machen?
Verwenden Sie den folgenden Ausdruck:
//span[contains(concat(' ', @class, ' '), ' amount ')]
Sie könnten verwenden contains
auf seine eigene, aber das wäre auch Klassen wie passen someamount
. Testen Sie den obigen Ausdruck an der folgenden Eingabe:
<root>
<span class="test amount blah"/>
<span class="amount test"/>
<span class="test amount"/>
<span class="amount"/>
<span class="someamount"/>
</root>
Es wählt die ersten vier span
Elemente aus, aber nicht das letzte.
Sie müssen die Methode contains verwenden. Siehe Wie verwende ich XPath contains ()?
//span[contains(@class,'amount')]