Represents the results from a single regular expression match.
Assembly: System (in System.dll)
Gets the empty group. All failed matches return this empty match.
Gets a collection of groups matched by the regular expression.
The position in the original string where the first character of the captured substring is found.(Inherited from Capture.)
Gets the length of the captured substring.(Inherited from Capture.)
Gets a value indicating whether the match is successful.(Inherited from Group.)
Gets the captured substring from the input string.(Inherited from Capture.)
Determines whether the specified object is equal to the current object.(Inherited from Object.)
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.)
Serves as the default hash function. (Inherited from Object.)
Returns a newobject with the results for the next match, starting at the position at which the last match ended (at the character after the last matched character).
Returns the expansion of the specified replacement pattern.
Returns ainstance equivalent to the one supplied that is suitable to share between multiple threads.
The Regex::Match method and represents the first pattern match in a string. Subsequent matches are represented by objects returned by the Match::NextMatch method. In addition, a MatchCollection object that consists of zero, one, or more objects is returned by the Regex::Matches method.object is immutable and has no public constructor. An instance of the class is returned by the
If the Regex::Matches method fails to match a regular expression pattern in an input string, it returns an empty MatchCollection object. You can then use a foreach construct in C# or a For Each construct in Visual Basic to iterate the collection.
If the Regex::Match method fails to match the regular expression pattern, it returns a object that is equal to Match::Empty. You can use the Success property to determine whether the match was successful. The following example provides an illustration.
If a pattern match is successful, the Value property contains the matched substring, the Index property indicates the zero-based starting position of the matched substring in the input string, and the Length property indicates the length of matched substring in the input string.
Because a single match can involve multiple capturing groups, Groups property that returns the GroupCollection. The instance itself is equivalent to the first object in the collection, at Match.Groups (Match.Groups(0) in Visual Basic), which represents the entire match. You can access the captured groups in a match in the following ways:has a
You can iterate the members of the GroupCollection object by using a foreach (C#) or For Each (Visual Basic) construct.
You can use the GroupCollection::Item[Int32] property to retrieve groups by the number of the capturing group. Note that you can determine which numbered groups are present in a regular expression by calling the instance Regex::GetGroupNumbers method.
You can use the GroupCollection::Item[String^] property to retrieve groups by the name of the capturing group. Note that you can determine which named groups are present in a regular expression by calling the instance Regex::GetGroupNames() method.
The following examples use the regular expression Console\.Write(Line)?. The regular expression is interpreted as follows:
Match the string "Console.Write". Note that the "." character is escaped so that it is interpreted as a literal period rather than as a wildcard that matches any character.
Match zero or one occurrence of the string "Line".
The following example calls the Regex::Matches(String^, String^) method to retrieve all pattern matches in an input string. It then iterates the objects in the returned MatchCollection object to display information about each match.
Available since 8
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Available since 8.1
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.