XPath выражение - перевод в нижний регистр - PullRequest
0 голосов
/ 04 марта 2012

У меня есть следующее выражение XPath:

"//*[@name='outputFormat']/ows:Value"

Я хотел бы сделать его нечувствительным к регистру, поскольку в некоторых XML-файлах outputFormat также может быть OutputFormat и т. Д. Я знаю функцию translate в XPath 1.0и хотел бы применить его для этого выражения.Мой простой вопрос: как?Я пытался с этим:

"//*[@Translate(name(), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz')='outputformat']/ows:Value"

, но это выдает ошибку.Буду признателен за любую помощь (включая советы о том, как лучше всего решить такие проблемы в XPath).

1 Ответ

3 голосов
/ 04 марта 2012

Ваш @ должен быть присоединен к name, так как это атрибут, который вы соответствуете, а translate() - функцияПопробуйте это:

"//*[translate(@name, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz') = 'outputFormat']/ows:Value"
...