XSL: поиск по имени узла - PullRequest
2 голосов
/ 14 ноября 2011

Я хочу найти дочерний узел, который начинается с "php"

<globals-cookie>
    <utma>1.959760512.1318348214.1318348214.1318348214.1</utma>
    <utmz>1.1318348214.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)</utmz>
    <phpsessid34534>826427ef2fade7f9471581a429ce266d</phpsessid34534>
    <utmb>122420241.88.10.1321257433</utmb>
    <utmc>122420241</utmc>
</globals-cookie>

Я бы написал //globals-cookie/phpsessid34534, но число меняется в конце

Ответы [ 2 ]

3 голосов
/ 14 ноября 2011

Вы можете использовать этот XPath:

globals-cookie/*[starts-with(local-name(), 'php')]
0 голосов
/ 14 ноября 2011

Во-первых, XPath для такого узла, который вы описываете, будет:

/globals-cookie/*[starts-with(local-name(.),'php']

Во-вторых, это то, для чего нужны атрибуты - что-то вроде этого было бы более разумным.

<php sessid="34534">826427ef2fade7f9471581a429ce266d</php>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...