Matchクラスは正規表現にマッチした箇所(部分文字列)を表すクラスで、Regex.Matchメソッド・Regex.Matchesメソッドでの戻り値として返されます。 Matchクラスを参照することでマッチした箇所の文字列を参照したり、別の文字列に置換したりすることができます。
Regex.Matchメソッドでは、マッチする箇所がない場合はSuccessプロパティがFalse
のMatchインスタンスが返されます。
Matchクラスのプロパティを参照して正規表現にマッチした個所の文字列・インデックス・長さを取得する
using System;
using System.Text.RegularExpressions;
class Sample {
static void Main()
{
var text = "The quick brown fox jumps over the lazy dog";
var pattern = @"\w{6,}"; // 6文字以上の単語
var m = Regex.Match(text, pattern); // 最初にマッチする箇所を取得
Console.WriteLine(m.Success);
// Match.Successプロパティの値は、IsMatchメソッドを呼び出した結果と同じ
Console.WriteLine(Regex.IsMatch(text, pattern));
}
}
実行結果
False False
上記の例にもあるように、Matchメソッドが返すMatchインスタンスのSuccessプロパティは、Regex.IsMatchメソッドによってパターンマッチングを行った場合の結果と同じになります。