การเลือกองค์ประกอบที่มีแอตทริบิวต์ขึ้นต้นด้วยบางสิ่งใน XPath


87

ตามชื่อเรื่องเป็นไปได้หรือไม่ที่จะเลือกองค์ประกอบใน XPath ที่ขึ้นต้นด้วยสตริงที่แน่นอน แต่อาจไม่ได้ลงท้ายด้วยสิ่งเดียวกัน

ตัวอย่างเช่นมี 3 องค์ประกอบจุดยึด:

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

ฉันต้องการรับองค์ประกอบจุดยึดที่ขึ้นต้นด้วย "buy.php /" เท่านั้น ฉันไม่คิดว่าสิ่งต่อไปนี้จะใช้ได้ผลหรือไม่:

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

ฉันจะทำเช่นนี้ได้อย่างไร?

คำตอบ:



3

ไม่แน่ใจว่านี่เป็นไวยากรณ์ที่ถูกต้องหรือไม่ แต่คุณอาจต้องการใช้ฟังก์ชัน fn: contains xpath ฟังก์ชันที่มีประโยชน์อื่น ๆ ที่คุณสามารถพบได้ที่นี่:

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

getByXPath ("// a [fn: มี (@ href / text (), 'buy.php /')]")


ลิงค์ข้างบนตายไปแล้ว แต่นี่คือการอ้างอิงฟังก์ชันอื่นที่ไม่ใช่: developer.mozilla.org/en-US/docs/Web/XPath/Functions
billynoah
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.