2016-04-03 14 views
-3

私の問題を解決するのを助けてくれることを願っています。特定のHTMLクラスの内部HTMLコードをSwift配列に格納しようとしています。ここで内部HTMLコードをSwiftアレイに保存

が私のHTMLコードです:

<html> 
<table> 

<tr class="list"> 
<td class="list"><b>TEXT1</b></td> 
<td class="list">TEXT2</td> 
<td class="list">TEXT3</td> 
</tr> 

<tr class="list"> 
<td class="list"><b>TEXT4</b></td> 
<td class="list">TEXT5</td> 
<td class="list">TEXT6</td> 
</tr> 

... 

</table> 
</html> 

この場合スウィフト配列は次のようになります。

let array = [ 
["TEXT1", "TEXT2", "TEXT3"], 
["TEXT4", "TEXT5", "TEXT6"], 
... 
] 

- >これはHTMLクラス "リスト" の内側のHTMLコードを格納します。

ありがとうございました!

+0

あなたは私の答えを見ましたか? –

答えて

1

あなたがHTMLを解析する必要がありますし、いくつかの素晴らしいスウィフトHTML解析ライブラリのような、あります。例として、これを使用して

https://github.com/tid-kijyun/Swift-HTML-Parser

、あなたがして、ULリストおよびループスルーを引き出すことができますliタグはあなたが使用できる配列を作成します:

var liArray = Array<AnyObject>() 
let html = "theHtmlYouWannaParse" 

//Parse HTML, handle errors 
var err : NSError? 
var parser = HTMLParser(html: html, error: &err) 
if err != nil { 
    print(err) 
    exit(1) 
} 

var bodyNode = parser.body 

//Find and loop through ul tags 
if let ulNodes = bodyNode?.findChildTags("ul") { 
    for ulNode in ulNodes { 
     //Find and loop through li tags 
     if let liNodes = ulNode?.findChildTags("li") { 
      for liNode in liNodes { 
       //Add to array 
       liArray.append(liNode) 
      } 
     } 
    } 
} 
+0

完璧に動作します。ありがとうございました! – Julian135

関連する問題