Auswählen von Elementen, deren Attribut mit etwas in XPath beginnt


84

Ist es, wie der Titel sagt, möglich, Elemente in XPath auszuwählen, die nur mit einer bestimmten Zeichenfolge beginnen, aber möglicherweise nicht mit derselben enden?

Zum Beispiel gibt es 3 Ankerelemente:

<a href="buy.php/onething"></a><a href="buy.php/twothing"></a><a href="sell.php/anotherthing"></a>

Ich möchte nur Ankerelemente erhalten, die mit 'buy.php /' beginnen. Ich denke nicht, dass Folgendes funktionieren wird, oder?

getByXPath("//a[@href='buy.php/']")

Wie kann ich das machen?

Antworten:



3

Sie sind sich nicht sicher, ob dies genau die richtige Syntax ist, aber Sie möchten wahrscheinlich die Funktion fn: enthält xpath verwenden. Weitere nützliche Funktionen finden Sie hier:

http://www.w3schools.com/xpath/xpath_functions.asp#string

getByXPath ("// a [fn: enthält (@ href / text (), 'buy.php /')]")


Der obige Link ist tot, aber hier ist eine weitere Funktionsreferenz, die nicht vorhanden ist: developer.mozilla.org/en-US/docs/Web/XPath/Functions
billynoah
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.