Regex.Matches: For Each Match, Capture
This page was last reviewed on Jan 14, 2024.
Dot Net Perls
Regex.Matches. This function uses a pattern argument. It searches the source String to find all matches to that pattern. It returns Match objects as part of a MatchCollection.
Function uses. Regex.Matches is useful for complex text processing. It can be used instead of Match() when more than one match is expected.
This program imports the System.Text.RegularExpressions namespace. In Main, we use the Regex.Matches method on a String literal containing several words starting with "s".
And The pattern in the Regex specifies that a match must start with s, have one or more non-whitespace characters, and end in d.
Info The Regex.Matches function returns a MatchCollection. We use the For-Each looping construct on it (matches).
Then In a nested loop, we enumerate all the Capture instances. We access the Index and Value from each Capture.
Note Each capture has an Index (the character position of the capture in the source string) and a Value (the matching substring itself).
Imports System.Text.RegularExpressions Module Module1 Sub Main() ' Input string. Dim value As String = "said shed see spear spread super" ' Call Regex.Matches method. Dim matches As MatchCollection = Regex.Matches(value, "s\w+d") ' Loop over matches. For Each m As Match In matches ' Loop over captures. For Each c As Capture In m.Captures ' Display. Console.WriteLine("Index={0}, Value={1}", c.Index, c.Value) Next Next End Sub End Module
Index=0, Value=said Index=5, Value=shed Index=20, Value=spread
Regex.Match. The Regex.Matches function is basically the same as the Regex.Match function except that it returns all matches rather than just the first one.
So If you need to find more than just one match, Regex.Matches is the best function to choose.
A summary. With Regex.Matches, you can find all the matching parts in a source string with a regular expression pattern. You need to then loop over all the individual matches.
Dot Net Perls is a collection of tested code examples. Pages are continually updated to stay current, with code correctness a top priority.
Sam Allen is passionate about computer languages. In the past, his work has been recommended by Apple and Microsoft and he has studied computers at a selective university in the United States.
This page was last updated on Jan 14, 2024 (edit link).
© 2007-2024 Sam Allen.