Показать определенный текст из CSV
Есть задача -
из текста на
CSVвзять определённую часть с помощьюXPath.
Например:
<location>
Иркутская область, г. Усолье-Сибирское, Матросова улица, 2
</location>
Надо из данного текста вытащить город
"г. Усолье-Сибирское".
Пробывал написать /location[last()] - но это не то-что надо.
Не очень силен в XPath.
Спасибо.
Ответы (1 шт):
Чтобы вытащить город из текста используйте следующую XPath-конструкцию:
substring-before(substring-after(/location, ', '), ', ')
Конструкция substring-before() выбирает часть строки до указанной подстроки, а substring-after() - после указанной подстроки. Сначала используется substring-after() с указанием ', ' в качестве подстроки, чтобы вырезать все, что идет до города, а затем substring-before() с тем же указанием, чтобы вырезать все, что идет после города. В результате остается только город.
Например, если использовать эту конструкцию с приведенным выше текстом, то будет выведено:
г. Усолье-Сибирское