Как получить только часть текста элемента, используя SWXMLHash - PullRequest
0 голосов
/ 06 декабря 2018

Скажем, у меня есть 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?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...