using System;
using System.Text.RegularExpressions;
public class Test
{
public static void Main()
{
String word = @"hello";
String input = @"hello. I am a string. hello friend. Many hellos. hello .hello";
Console.WriteLine("--- Input ---" + Environment.NewLine + input + Environment.NewLine);
Console.WriteLine("--- Matches ---");
Regex regex = new Regex(@"(?<=\s)\b" + word + @"\b|\b" + word + @"\b(?=[\s\.])");
MatchCollection mc = regex.Matches(input);
foreach(Match m in mc)
{
Console.WriteLine(m.Value + " - " + m.Index.ToString());
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGV4dC5SZWd1bGFyRXhwcmVzc2lvbnM7CgpwdWJsaWMgY2xhc3MgVGVzdAp7CglwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCgl7CiAgICAgICAgU3RyaW5nIHdvcmQgPSBAImhlbGxvIjsKICAgICAgICBTdHJpbmcgaW5wdXQgPSBAImhlbGxvLiBJIGFtIGEgc3RyaW5nLiBoZWxsbyBmcmllbmQuIE1hbnkgaGVsbG9zLiBoZWxsbyAuaGVsbG8iOwogICAgICAgIAogICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKCItLS0gSW5wdXQgLS0tIiArIEVudmlyb25tZW50Lk5ld0xpbmUgKyBpbnB1dCArIEVudmlyb25tZW50Lk5ld0xpbmUpOwogICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKCItLS0gTWF0Y2hlcyAtLS0iKTsKICAgICAgICAKCQkKUmVnZXggcmVnZXggPSBuZXcgUmVnZXgoQCIoPzw9XHMpXGIiICsgd29yZCArIEAiXGJ8XGIiICsgd29yZCArIEAiXGIoPz1bXHNcLl0pIik7CiAgICAgICAgTWF0Y2hDb2xsZWN0aW9uIG1jID0gcmVnZXguTWF0Y2hlcyhpbnB1dCk7CiAgICAgICAgZm9yZWFjaChNYXRjaCBtIGluIG1jKQogICAgICAgIHsKICAgICAgICAgICAgQ29uc29sZS5Xcml0ZUxpbmUobS5WYWx1ZSArICIgLSAiICsgbS5JbmRleC5Ub1N0cmluZygpKTsKICAgICAgICB9Cgl9Cn0=