Как получить каждое значение отдельно, используя XPATH - PullRequest
0 голосов
/ 01 декабря 2018

Попытка извлечь каждую запись , где первый элемент токена содержит имена атрибутов, а фактические значения присутствуют в строке номер 2.

<tokens>
    <token>"HostRecordName","Change","IPAddress"</token>
    <token>"lvs1-plcws-001.paypalcorp.com","Deleted","10.185.254.56"</token>
    <token>"lvs1-plcws-002.paypalcorp.com","Deleted","10.185.254.57"</token>
    <token>"phx11-plcws-001.paypalcorp.com","Deleted","10.222.254.20"</token>
    <token>"phx11-plcws-002.paypalcorp.com","Deleted","10.222.254.21"</token>
    <token>"lvs1-apiws-001.paypalcorp.com","Added","10.185.254.56"</token>
    <token>"lvs1-apiws-002.paypalcorp.com","Added","10.185.254.57"</token>
    <token>"phx11-apiws-001.paypalcorp.com","Added","10.222.254.20"</token>
    <token>"phx11-apiws-002.paypalcorp.com","Added","10.222.254.21"</token>
</tokens>

1 Ответ

0 голосов
/ 02 декабря 2018

Чтобы выбрать только первый элемент токена, вы можете использовать следующий XPath для выбора первого элемента токена, который использует сокращенный синтаксис, указывающий position(), равный 1:

/tokens/token[1]

Чтобы выбрать все«строки» от второго token элемента до last(), вы можете использовать предикат для проверки, где position() больше 1:

/tokens/token[position() > 1]

Если вы хотите выбрать конкретный столбецmsgstr "из любой строки вы можете tokenize() на ,.

Пример выбора первого «столбца» из первой «строки» данных:

tokenize(/tokens/token[position() > 1][1], ",")[1]

Если вам нужно извлечь значение между кавычками, вы можете использовать substring(), выбор от 2 до string-length() - 2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...