Искать / анализировать XML и исключать определенные узлы, не удаляя их? - PullRequest
0 голосов
/ 28 февраля 2019

Команда ниже позволяет мне анализировать текст во всех узлах, кроме узлов 'wp14: sizeRelH' & 'wp14: sizeRelV'

XML.search('//wp14:sizeRelH', '//wp14:sizeRelV').remove.search('//text()')

Я хотел бы сделать то же самое, но я не делаюхотите удалить узлы 'wp14: sizeRelH' и 'wp14: sizeRelV' из XML.

Таким образом, я могу анализировать дерево XML и вносить изменения в текст в каждом узле, не затрагивая узлы 'wp14: sizeRelH' и 'wp14: sizeRelV'

РЕДАКТИРОВАТЬ: появляется, если узлы«// wp14: sizeRelH» или «// wp14: sizeRelV» отсутствуют в XML, тогда моя команда также не возвращает ничего плохого: (

1 Ответ

0 голосов
/ 28 февраля 2019

Похоже, я нашел ответ.Я использовал //text()[not...], но мне нужно было найти имена предков текста, который я не хотел включать:

XML.search('//text()[not(ancestor::wp14:pctHeight or ancestor::wp14:pctWidth or ancestor::wp:posOffset)]')
...