Конкат XPath не работает - PullRequest
0 голосов
/ 05 июля 2018

Я пытаюсь получить первое и второе <td> во всех <tr> из этой таблицы с XPath. Но что-то я делаю не так. Возврат [INVALID XPATH EXPRESSION]

//table[@id='thetable']/tbody/tr/concat(td[1],'-',td[2])

Ответы [ 2 ]

0 голосов
/ 06 июля 2018

Для использования concat () в правой части «/» требуется движок XPath 2.0. Сообщение об ошибке говорит о том, что вы пытаетесь запустить это с использованием механизма XPath 1.0. Версия со строковым соединением также нуждается в XPath 2.0.

На самом деле любое выражение, которое возвращает последовательность строк, нуждается в XPath 2.0, потому что система типов XPath 1.0 не имеет такого типа данных.

Если вам нужна реализация XPath 2.0, которая работает в браузере, вы можете попробовать Saxon-JS. (Фактически это даст вам XPath 3.1).

0 голосов
/ 05 июля 2018

Попробуйте:

string-join(//table[@id='thetable']/tbody/tr/td[1 to 2]/string(), "-")
...