Regex::Matches Method (String^)

 

Searches the specified input string for all occurrences of a regular expression.

Namespace:   System.Text.RegularExpressions
Assembly:  System (in System.dll)

public:
MatchCollection^ Matches(
	String^ input
)

Parameters

input
Type: System::String^

The string to search for a match.

Return Value

Type: System.Text.RegularExpressions::MatchCollection^

A collection of the Match objects found by the search. If no matches are found, the method returns an empty collection object.

Exception Condition
ArgumentNullException

input is null.

The Matches(String^) method is similar to the Match(String^) method, except that it returns information about all the matches found in the input string, instead of a single match. It is equivalent to the following code:

No code example is currently available or this language may not be supported.

The collection includes only matches and terminates at the first non-match.

The regular expression pattern for which the Matches(String^) method searches is defined by the call to one of the Regex class constructors. For more information about the elements that can form a regular expression pattern, see Regular Expression Language - Quick Reference.

The Matches method uses lazy evaluation to populate the returned MatchCollection object. Accessing members of this collection such as MatchCollection::Count and MatchCollection::CopyTo causes the collection to be populated immediately. To take advantage of lazy evaluation, you should iterate the collection by using a construct such as foreach in C# and ForEachNext in Visual Basic.

Because of its lazy evaluation, calling the Matches(String^) method does not throw a RegexMatchTimeoutException exception. However, the exception is thrown when an operation is performed on the MatchCollection object returned by this method, if the MatchTimeout property is not Regex::InfiniteMatchTimeout and a matching operation exceeds the time-out interval.

The following example uses the Matches(String^) method to identify any words in a sentence that end in "es".

No code example is currently available or this language may not be supported.

The regular expression pattern \b\w+es\b is defined as shown in the following table.

Pattern

Description

\b

Begin the match at a word boundary.

\w+

Match one or more word characters.

es

Match the literal string "es".

\b

End the match at a word boundary.

Universal Windows Platform
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top
Show: