2016-12-30 14 views
0

実際には、 "District-1 1656-Union-Street Eureka 707-445-6600"のようなAPIからアドレスフィールド文字列を取得しているので、配列に変換する必要があります。Swift 3:文字列から配列を取得するには

期待される結果:

[ "地区-1"、 "1656-ユニオンストリート"、 "ユリイカ" は、 "707-445-6600"]

私が得ることができるよう空白をセパレータとして使用するcomponentsメソッドの配列

//Code 
var getAddress = addInfo.components(separatedBy: " ") 

//Result 
["District-1", "", "", "1656-Union-Street", "", "", "Eureka", "", "707-445-6600"] 

しかし、問題は空のオブジェクトも返してしまうことです。

答えて

1

splitメソッドを適用して、タスクを完了できます。すなわち

var addInfo = "District-1 1656-Union-Street Eureka 707-445-6600" 
var getAddress = addInfo.characters.split(separator: " ", omittingEmptySubsequences: true).map(String.init) 

//Result 
["District-1", "1656-Union-Street", "Eureka", "707-445-6600"] 

について

はomittingEmptySubsequences:falseの場合、空のサブシーケンスは コレクションセパレータ要素の各連続対のためとで、セパレータの各インスタンスの結果で 返されます コレクションの開始または終了。 trueの場合、空でないサブシーケンスのみが返されます。 のデフォルト値はtrueです。詳細については

link

を確認してください
関連する問題