Strings.Split(String, String, Int32, CompareMethod) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
部分文字列ごとに区切られた文字列からゼロ ベースの 1 次元配列を作成し、返します。
public static string[] Split (string? Expression, string? Delimiter = " ", int Limit = -1, Microsoft.VisualBasic.CompareMethod Compare = Microsoft.VisualBasic.CompareMethod.Binary);
public static string[] Split (string Expression, string Delimiter = " ", int Limit = -1, Microsoft.VisualBasic.CompareMethod Compare = Microsoft.VisualBasic.CompareMethod.Binary);
static member Split : string * string * int * Microsoft.VisualBasic.CompareMethod -> string[]
Public Function Split (Expression As String, Optional Delimiter As String = " ", Optional Limit As Integer = -1, Optional Compare As CompareMethod = Microsoft.VisualBasic.CompareMethod.Binary) As String()
パラメーター
- Expression
- String
必須です。 部分文字列および区切り記号を含む String
型の式。
- Delimiter
- String
省略可能。 文字列の区切りを識別するために使用する任意の 1 文字。 Delimiter
が省略された場合、空白文字 (" ") が区切り記号として使用されます。
- Limit
- Int32
省略可能。 入力文字列を分割する場合の部分文字列の最大数。 既定値の -1 は、Delimiter
文字列が出現するたびに入力文字列が分割されることを示しています。
- Compare
- CompareMethod
省略可能。 部分文字列を評価する場合に使用する比較を示す数値。 値については、「設定」を参照してください。
戻り値
String
配列 Expression
が長さ 0 の文字列 ("") の場合、Split
は、長さ 0 の文字列を含む単一要素の配列を返します。 Delimiter
が長さ 0 の文字列である場合、または Expression
に Delimiter がない場合に、Split
は Expression
型の文字列を含む単一要素の配列を返します。
例
次の例では、文字列をスペースで分割する方法を示します。
Dim testString As String = "Look at these!"
' Returns an array containing "Look", "at", and "these!".
Dim testArray() As String = Split(testString)
次の例では、行内の複数の区切り記号で文字列を分割し、空の文字列をフィルター処理する方法を示します。
Dim testString As String = "apple pear banana "
Dim testArray() As String = Split(testString)
' testArray holds {"apple", "", "", "", "pear", "banana", "", ""}
Dim lastNonEmpty As Integer = -1
For i As Integer = 0 To testArray.Length - 1
If testArray(i) <> "" Then
lastNonEmpty += 1
testArray(lastNonEmpty) = testArray(i)
End If
Next
ReDim Preserve testArray(lastNonEmpty)
' testArray now holds {"apple", "pear", "banana"}
注釈
既定では、または -1 と等しい場合 Limit
、関数は Split
区切り記号文字列の出現ごとに入力文字列を分割し、配列内の部分文字列を返します。 パラメーターが Limit
0 より大きい場合、 Split
関数は区切り記号の最初 Limit
の -1 回の出現位置で文字列を分割し、結果の部分文字列を含む配列を返します。 たとえば、 Split("a:b:c", ":")
は配列 {"a", "b", "c"}
を返し、 は Split("a:b:c", ":", 2)
配列 {"a", "b:c"}
を返します。
関数は、 Split
行に 2 つの区切り記号、または文字列の先頭または末尾に区切り記号を検出すると、空の文字列 ("") を囲むと解釈します。 たとえば、 は、 Split("xx", "x")
3 つの空の文字列を含む配列を返します。1 つは文字列の先頭から最初の "x"、1 つは 2 つの "x" 文字列の間、1 つは最後の "x" と文字列の末尾の間にあります。
次の表は、省略可能な Delimiter
、、および Compare
パラメーターが関数の動作を変更する方法をSplit
示Limit
しています。
呼び出しの分割 | 戻り値 |
---|---|
Split("42, 12, 19") |
{"42," , "12," , "19"} |
Split("42, 12, 19", ", ") |
{"42", "12", "19"} |
Split("42, 12, 19", ", ", 2) |
{"42", "12, 19"} |
Split("192.168.0.1", ".") |
{"192", "168", "0", "1"} |
Split("Alice and Bob", " AND ") |
{"Alice and Bob"} |
Split("Alice and Bob", " AND ", ,CompareMethod.Text) |
{"Alice", "Bob"} |
Split("someone@example.com", "@",1) |
{"someone@example.com"} |
Split("someone@example.com", "@",2) |
{"someone", "example.com"} |
引数には Compare
、次の値を指定できます。
定数 | 説明 | 値 |
---|---|---|
CompareMethod.Binary |
バイナリ比較を実行します | 0 |
CompareMethod.Text |
テキスト比較を実行します | 1 |
適用対象
こちらもご覧ください
.NET