У меня есть XML-документ вроде следующего:Как выбрать следующие конкретные узлы XML с помощью XPath?
<Objects>
<object distName="a/b"> </object>
<object distName="a/b/c1"> </object>
<object distName="a/b/c4/d/e"> </object>
<object distName="a/b/c2"> </object>
<object distName="a/b/c6/d"> </object>
</Objects>
И мне нужно, чтобы выбрать все узлы, которые имеет путь, который заканчивается «с» + номер. Как: "A/B/с1" и "а/б/с2", но не как "A/B/с6/д", ни "A/B/с4/д/е" ,
Если я стараюсь следующее:
`cNodes = xmlDoc.xpath("//object[contains(@path, `a/b/c`)]")`
Тогда это будет включать в себя "A/B/с6/д" и "а/б/c4/D/E", который не то, что я требую.
Так есть ли способ, чтобы сделать работу в одной или, может быть, две строки кода. Я имею в виду, что я могу сделать это, как петля и тому подобное, чего я не хочу. Это потому, что настоящий XML-документ - это тысячи узлов.
PS: Python 2.7, LXML
Нет, путь - это всего лишь атрибут. Это не имеет никакого отношения к контенту. – AhmedWas
@JeffMercado Я изменил имя с 'path' на' distName'. Потому что я просто приведу пример. это не совсем похоже на документ XML, который у меня есть. – AhmedWas
@JeffMercado Извините, моя ошибка. Я отредактирую. – AhmedWas