2008-11-14 1 views
1

Могу ли я использовать функцию функции набора узлов Xpath() в функции Delphi selectNodes(), чтобы выбрать только определенное количество элементов из списка узлов? Если я так:Функции Delphi и XPath

selectNodes('Item[1]') 

ее все в порядке, и я получаю элемент с индексом 1, но когда я пытаюсь

selectNodes('Item[position()<10]') 

я получаю исключение «неизвестный метод», когда я пытаюсь

selectNodes('Item[<10]') 

Я получаю «неожиданный токен <». Я использую delphi7, и я также импортировал новую библиотеку типов в свой проект с более новыми версиями msxml.

ответ

0

SelectNodes требует строки, так что вы должны попробовать:

selectNodes('Item[position()<10]') 

или любой другой запрос XPATH.

+0

Это был мой первый импульс, но это была ошибка времени компиляции, и я не думаю, что это то, что получил OP. Я думаю, что он просто отказался от цитат. – 2008-11-14 13:03:43

+0

Правильно, я использую строку, конечно, иначе я бы получил ошибки при компиляции. Я редактировал свой пост. – Tamm 2008-11-14 13:13:27

1

Это не вопрос Delphi, я думаю, но MSXML. Проверьте MSXML docs или, скорее, MS XPath docs.

Хм, согласно XPath examples, размещенном на сайте MSDN «Item[position() &lt; 10]» должно было сработать, по крайней мере, если «Item» это имя элемента вы после ...

0

Может быть версия-выпуск ? Я импортировал typelibrary из MS XML 6 и не получил ошибок.