[Visual Basic]正規表現を使って文字列を分割する
RegexクラスのSplitメソッドを使う。System.Text.RegularExpressions名前空間をインポートしておく。
以下は文字型変数sに代入した文字列「□A□BC□□DEF□□」(□は空白)を1つ以上の空白で分割した例。「1つ以上の空白」は正規表現では「[\s]+」となる。
分割元の文字列の前後の空白を同時に判定するのは表現が煩雑になるため、分割の前にTrimメソッドで、分割元の文字列の前後の空白を除去している。
Imports System.Text.RegularExpressions
Module Split
Sub Main()
Dim i As Integer
Dim s As String
Dim word() As String
s = " A BC DEF "
word = Regex.Split(s.Trim(), "[\s]+")
For i = 0 To word.GetLength(0) - 1
Console.WriteLine(Str(i) & ": " & word(i))
Next i
End Sub
End Module
出力
0: A
1: BC
2: DEF
