Regex.Splitメソッドを使うと、正規表現にマッチする箇所を探索し、マッチした部分を区切りとして文字列を分割することができます。 言い換えると、文字列分割の区切り文字として任意の正規表現を用いることができます。 Regex.SplitメソッドはString.Splitメソッドと同様、分割した結果を文字列型の配列で返します。
次の例では、句読点(\p{P}
)を区切りとみなして文字列を分割しています。
Regex.Splitメソッドでは、区切りの正規表現がグループ化されているか・キャプチャされるグループかどうかによって、区切りの文字列となる文字列も含めて返されるかどうかが変わります。 この動作について詳しくは正規表現の構造化および処理(マッチ・グループ・キャプチャ) §.グループ化された正規表現による分割 (Regex.Split)で解説しています。
この例で使用している正規表現\p{P}
のP
は、「すべての句読点」を表すUnicodeカテゴリを意味します。 このほかにも「全ての制御文字」を表すC
や、「全ての記号」を表すS
、「記号・数学」を表すSm
などを使うこともできます。 詳しくは.NET Frameworkで使用できる正規表現 §.文字クラス等を参照してください。