Скажем, у меня есть XML-файл, такой как
<root>
<h:table>
<h:tr> we have
<h:td>Apples</h:td>,
<h:td>Bananas</h:td>,
</h:tr>
</h:table>
<f:table>
<f:name>African Coffee Table</f:name>,
<f:width>80</f:width>,
<f:length>120</f:length>,
</f:table>
</root>
Обратите внимание, как текст в <h:tr>
и текст в <f:table>
перемежаются с другими тегами.Моя конечная цель - напечатать этот список как «у нас есть яблоки, бананы, африканский журнальный столик, 80, 120», но я не знаю, как получить только часть «у нас есть» текста.
До сих пор я пытался использовать
func enumerate(indexer: XMLIndexer) {
for child in indexer.children {
print(child.element!.text)
enumerate(child)
}
}
enumerate(indexer: exampleXML)
Однако это печатает "У нас есть, Яблоки бананы,, Африканский журнальный столик 80 120".Корень проблемы в том, что exampleXML["root"]["h:table"]["h:tr"].element!.text
возвращает «мы имеем», в то время как я хотел бы сначала получить часть «у нас есть» и распечатать ее, затем напечатать «Яблоки», затем получить «,» и распечатать,и т.д. Я просто понятия не имею, какой синтаксис я должен использовать для этого.Кто-нибудь знает, как сделать это с SWXMLHash или с другим методом в Swift?