文書   >   Swift   >   Swift 標準ライブラリ  >     手動でメモリ管理   >   UnsafeMutableBufferPointer   >   split(separator:maxSplits:omittingEmptySubsequences:)


インスタンスメソッド


split(separator:maxSplits:omittingEmptySubsequences:)


与えられた要素に等しい要素のまわりの、シーケンスの可能な限り長い部分シーケンスを順番に返します。





宣言


func split(separator: Element, maxSplits: Int = Int.max, omittingEmptySubsequences: Bool = true) -> [ArraySlice<Element>]

ElementEquatable に準拠している場合利用可能です。


パラメータ


separator分割されるべき要素。
maxSplitsシーケンスを分割する最大回数、または返すべき部分シーケンスの数より 1 つ少ない回数。maxSplits + 1 の部分シーケンスが返される場合、最後の部分シーケンスは残りの要素を含む元のシーケンスの接尾辞です。maxSplits はゼロ以上でなければなりません。デフォルト値は Int.max です。
omittingEmptySubsequencesfalse の場合、シーケンス内の連続する 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: " ")
          .map(String.init))
// Prints "["BLANCHE:", "I", "don\'t", "want", "realism.", "I", "want", "magic!"]"


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


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


最後の例では、omittingEmptySubsequences パラメータに false を渡すため、返される配列は、空白が繰り返された所には空の文字列が含まれます。


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


複雑さ:O(n)、ここで n はシーケンスの長さです。

















トップへ












トップへ












トップへ












トップへ












トップへ
目次
Xcode の新機能

  • 言語:Swift
  • SDK
  • Xcode 10.2+

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












  • トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ