Значение атрибута вывода с XPath 1.0 - PullRequest
4 голосов
/ 29 января 2012

Пример:

 <div class='known' name='unknown'>

Как я могу вернуть name значение атрибута («неизвестно») на основе известного class значения атрибута с XPath 1.0?

При поиске ответа я обнаружил, что в XPath 2.0 есть инструмент для этого:

 //div[@class='known']/@name/string()

Но не могу найти аналогию с XPath 1.0

1 Ответ

5 голосов
/ 29 января 2012

Использовать :

string(//div[@class='known']/@name)

Создает строковое значение атрибута name первого в элементе порядка документов div, так чтостроковое значение его атрибута class равно "unknown".

Если //div[@class='known'] выбирает более одного элемента div и требуется значение атрибута name для выбранного k-го div, используйте:

string((//div[@class='known'])[$k]/@name)

, где $k должен быть заменен на желаемое целое число, иначе переменная $k должна находиться в контексте оценки для выражения XPath.

...