C#で正規表現で文字列を分割したい場合はRegex.Split
が便利です。
使い方は次のような感じです。
数字で分割するサンプル
using System;
using System.Text.RegularExpressions;
public class Example1
{
static public void Main ()
{
string pattern = "[0-9]+";
string input = "abc123def456ghi";
string[] result = Regex.Split(input, pattern);
foreach(string s in result) Console.WriteLine(s);
}
}
実行結果
abc
def
ghi
さらに、分割した文字列も表示したい場合は正規表現の( )
を使います。
using System;
using System.Text.RegularExpressions;
public class Example2
{
static public void Main ()
{
string pattern = "([0-9]+)";
string input = "abc123def456ghi";
string[] result = Regex.Split(input, pattern);
foreach(string s in result) Console.WriteLine(s);
}
}
実行結果
abc
123
def
456
ghi
正規表現が不要な場合はString.Splitも使えますので、いろいろ試してみてください。
リンク
Regex.Split Method (System.Text.RegularExpressions) | Microsoft Docs
https://docs.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.regex.split?view=netframework-4.8
String.Split Method (System) | Microsoft Docs
https://docs.microsoft.com/en-us/dotnet/api/system.string.split?view=netframework-4.8