What is Java Matcher find in C#

The equivalent of Java Matcher in C# is the Regex.Matches() function. First define the pattern and then call the Regex.Matches().

string pattern = @"\b\w+es\b";
string sentence = "NOTES: Any notes or comments are optional.";
      
foreach (Match match in Regex.Matches(sentence, pattern,                                               RegexOptions.None, TimeSpan.FromSeconds(1)))
    Console.WriteLine("Found '{0}' at position {1}", match.Value, match.Index);

C# documenation on Regex Matches: https://learn.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.regex.matches?view=net-7.0