文書   >   Swift   >  String   >   split(separator:maxSplits:omittingEmptySubsequences:)
インスタンスメソッド
ssplit(separator:maxSplits:omittingEmptySubsequences:)
指定された位置からコレクションの末尾までの部分シーケンスを返します。
宣言
パラメータ
separator | 分割されるべき要素。 |
maxSplits | コレクションを分割すべき最大回数、または返すべき部分シーケンスの数より 1 少ない数。maxSplits + 1 個の部分シーケンスが返された場合、最後のものは残りの要素を含む元のコレクションの接尾辞です。maxSplits はゼロ以上でなければなりません。デフォルト値は Int.max です。 |
omittingEmptySubsequences | false の場合、コレクション内の separator 要素の連続したペアごと、およびコレクションの先頭または末尾の separator のインスタンスごとに、空の部分シーケンスが結果に返されます。true の場合、空でない部分シーケンスのみが返されます。デフォルト値は true です。 |
戻り値
このコレクションの要素から分割された、部分シーケンスの配列。
議論
結果の配列は、最大 maxSplits + 1 個の部分シーケンスで構成されます。コレクションを分割するために使用される要素は、どの部分シーケンスの一部としても返されません。
以下の例は、各空白文字 (" ") で文字列を分割するときの maxSplits パラメータと omittingEmptySubsequences パラメータの効果を示しています。split を最初に使用すると、もともと 1 つ以上の空白で区切られていた各単語が返されます。
let line = "BLANCHE: I don't want realism. I want magic!"
print(line.split(separator: " "))
// Prints "["BLANCHE:", "I", "don\'t", "want", "realism.", "I", "want", "magic!"]"
2 番目の例では、maxSplits パラメータに 1 を渡しているため、元の文字列は 1 回だけ分割されて 2 つの新しい文字列になります。
print(line.split(separator: " ", maxSplits: 1))
// Prints "["BLANCHE:", " I don\'t want realism. I want magic!"]"
最後の例では、omittingEmptySubsequences パラメータに false を渡しているため、返される配列には空白が繰り返された空の文字列が含まれます。
print(line.split(separator: " ", omittingEmptySubsequences: false))
// Prints "["BLANCHE:", "", "", "I", "don\'t", "want", "realism.", "I", "want", "magic!"]"
複雑さ: O(n)、ここで n はコレクションの長さです。
以下も見よ
文字列の分割
与えられた述語 (predicate) を満たす要素を含まない、コレクションの可能な限り長い部分シーケンスを順番に返します。
トップへ
トップへ
トップへ
トップへ