次の方法で共有


Regex.Match メソッド

入力文字内で正規表現と一致する対象を 1 つ検索し、その正確な結果を単一の Match オブジェクトとして返します。

オーバーロードの一覧

指定した入力文字列内で、 Regex コンストラクタで指定された正規表現と一致する対象を 1 つ検索します。

.NET Compact Framework でもサポート。

[Visual Basic] Overloads Public Function Match(String) As Match

[C#] public Match Match(string);

[C++] public: Match* Match(String*);

[JScript] public function Match(String) : Match;

入力文字列内の指定した開始位置から検索を開始し、その入力文字列内で正規表現と一致する対象を 1 つ検索します。

.NET Compact Framework でもサポート。

[Visual Basic] Overloads Public Function Match(String, Integer) As Match

[C#] public Match Match(string, int);

[C++] public: Match* Match(String*, int);

[JScript] public function Match(String, int) : Match;

指定した入力文字列内で、 pattern パラメータで指定された正規表現と一致する対象を検索します。

.NET Compact Framework でもサポート。

[Visual Basic] Overloads Public Shared Function Match(String, String) As Match

[C#] public static Match Match(string, string);

[C++] public: static Match* Match(String*, String*);

[JScript] public static function Match(String, String) : Match;

入力文字列の開始位置および入力文字列長を指定して、その入力文字列内で正規表現と一致する対象を検索します。

.NET Compact Framework でもサポート。

[Visual Basic] Overloads Public Function Match(String, Integer, Integer) As Match

[C#] public Match Match(string, int, int);

[C++] public: Match* Match(String*, int, int);

[JScript] public function Match(String, int, int) : Match;

options パラメータで一致オプションを指定し、 pattern パラメータで指定された正規表現に一致する対象を検索します。

.NET Compact Framework でもサポート。

[Visual Basic] Overloads Public Shared Function Match(String, String, RegexOptions) As Match

[C#] public static Match Match(string, string, RegexOptions);

[C++] public: static Match* Match(String*, String*, RegexOptions);

[JScript] public static function Match(String, String, RegexOptions) : Match;

使用例

[Visual Basic, C#, C++] メモ   ここでは、Match のオーバーロード形式のうちの 1 つだけについて、使用例を示します。その他の例については、各オーバーロード形式のトピックを参照してください。

 
Dim text As String = "One car red car blue car"
Dim pat As String = "(\w+)\s+(car)"
' Compile the regular expression.
Dim r As Regex = new Regex(pat, RegexOptions.IgnoreCase)
' Match the regular expression pattern against a text string.
Dim m As Match = r.Match(text)
Dim matchcount as Integer = 0
While (m.Success)
   matchCount += 1
   Console.WriteLine("Match" & (matchCount))
   Dim i As Integer
   For i = 1 to 2
      Dim g as Group = m.Groups(i)
      Console.WriteLine("Group" & i & "='" & g.ToString() & "'")
      Dim cc As CaptureCollection = g.Captures
      Dim j As Integer 
      For j = 0 to cc.Count - 1
     Dim c As Capture = cc(j)
         Console.WriteLine("Capture" & j & "='" & c.ToString() _
            & "', Position=" & c.Index)
      Next j
   Next i
   m = m.NextMatch()
End While

[C#] 
string text = "One car red car blue car";
string pat = @"(\w+)\s+(car)";
// Compile the regular expression.
Regex r = new Regex(pat, RegexOptions.IgnoreCase);
// Match the regular expression pattern against a text string.
Match m = r.Match(text);
int matchCount = 0;
while (m.Success) 
{
   Console.WriteLine("Match"+ (++matchCount));
   for (int i = 1; i <= 2; i++) 
   {
      Group g = m.Groups[i];
      Console.WriteLine("Group"+i+"='" + g + "'");
      CaptureCollection cc = g.Captures;
      for (int j = 0; j < cc.Count; j++) 
      {
         Capture c = cc[j];
         System.Console.WriteLine("Capture"+j+"='" + c + "', Position="+c.Index);
      }
   }
   m = m.NextMatch();
}

[C++] 
String* text = S"One car red car blue car";
String* pat = S"(\\w+)\\s+(car)";
// Compile the regular expression.
Regex* r = new Regex(pat, RegexOptions::IgnoreCase);
// Match the regular expression pattern against a text string.
Match* m = r->Match(text);
int matchCount = 0;
while (m->Success) 
{
   Console::WriteLine(S"Match{0}", __box(++matchCount));
   for (int i = 1; i <= 2; i++) {
      Group* g = m->Groups->Item[i];
      Console::WriteLine(S"Group{0}='{1}'", __box(i), g);
      CaptureCollection* cc = g->Captures;
      for (int j = 0; j < cc->Count; j++) 
      {
         Capture* c = cc->Item[j];
         System::Console::WriteLine(S"Capture{0}='{1}', Position={2}", __box(j), c, __box(c->Index));
      }
   }
   m = m->NextMatch();
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

参照

Regex クラス | Regex メンバ | System.Text.RegularExpressions 名前空間