文書   >   Swift 標準ライブラリ   >   Collections   >   Supporting Types   >   AnyIterator   >   split(maxSplits:omittingEmptySubsequences:whereSeparator:)


インスタンスメソッド


split(maxSplits:omittingEmptySubsequences:
whereSeparator:)


指定された predicate (述語) を満たす要素を含んでいないシーケンスの可能な最長の部分シーケンスを順番に返します。シーケンスを分割するために使用された要素は、いかなる部分シーケンスの一部としても返されません。





宣言


func split(maxSplits: Int = default, omittingEmptySubsequences: Bool = default,
	 whereSeparator isSeparator: (Element) throws -> Bool) rethrows ->
	  [AnySequence<Element>] 


パラメータ


maxSplitsシーケンスを分割する最大回数、または返すべき部分シーケンスの数より 1 つ少ない数。 maxSplits + 1 の部分シーケンスが返された場合、最後のシーケンスは、残りの要素を含む元のシーケンスの接尾辞です。maxSplits はゼロ以上でなければなりません。デフォルト値は Int.max です。
omittingEmptySubsequencesfalse の場合、isSeparator predicate (述語) を満たす連続した要素の各ペアの結果と、isSeparator predicate を満たすシーケンスの開始または終了の各要素の結果のペアに、空のサブシーケンスが戻されます。true の場合、空でない部分シーケンスのみが返されます。デフォルト値は true です。
isSeparatorその引数をシーケンスの分割に使用する必要がある場合は true を返すクロージャ。それ以外の場合は false です。


戻り値


このシーケンスの要素から分割された、部分シーケンスの配列。


議論


以下の例は、空白に一致するクロージャを使用して文字列を分割するときの maxSplits および omittingEmptySubsequences パラメータの効果を示しています。split の最初の使用は、元は 1 つ以上の空白で区切られた各単語を返します。


let line = "BLANCHE:   I don't want realism. I want magic!"
print(line.split(whereSeparator: { $0 == " " })
          .map(String.init))
// Prints "["BLANCHE:", "I", "don\'t", "want", "realism.", "I", "want", "magic!"]"


2 番目の例は、maxSplits パラメータに 1 を渡すため、元の文字列は 1 回だけ分割され 2 つの新しい文字列になります。


print(
   line.split(maxSplits: 1, whereSeparator: { $0 == " " })
                  .map(String.init))
// Prints "["BLANCHE:", "  I don\'t want realism. I want magic!"]"


最後の例は allowEmptySlices パラメーターに true を渡します。したがって、返された配列には空白が繰り返された空の文字列が含まれます。


print(
    line.split(
        omittingEmptySubsequences: false,
        whereSeparator: { $0 == " " }
    ).map(String.init))
// Prints "["BLANCHE:", "", "", "I", "don\'t", "want", "realism.", "I", "want", "magic!"]"




目次
Xcode の新機能

  • 言語:Swift
  • SDK
  • Xcode 7.1+
  • フレームワーク
  • Swift 標準ライブラリ
  • 宣言
  • パラメータ
  • 戻り値
  • 議論












  • トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)