I have some code to find a set of character (or any) occur in each word in some sentences. Ex: sentences: "existing pessimist optimist this is" character: "is" number of occurrences: 1 (give 2 in VS , give 3 in regex101); 2(give 2 in VS,give 2 in regex101); 3(give 2 in VS,give 1 in regex101). I don't understand what I do. Here is my code
Regex regex;
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.Append("([a-zA-Z]*[string]{numberOccur,}[^\\s][a-zA-Z]+\\s)");
//Console.Write("Please input number of sentence: ");
int NumerofSentence = Int32.Parse(Console.ReadLine());//Number of sentence want to check
List<string> ListSentence = new List<string>();
Console.Write("Input sentence: ");
for (int index = 0; index < NumerofSentence; index++)
{
ListSentence.Add(Console.ReadLine());//Store in a collection object
}
//Console.Write("Input number of occurrences character in each word in sentence separated by non-word characters: ");
int NumberOccur = Int32.Parse(Console.ReadLine());
//Console.Write("Input character you want to find in all sentence: ");
string stringFinded = Console.ReadLine();
for (int index = 0; index < NumerofSentence; index++)
{
stringBuilder.Replace("string", stringFinded);
stringBuilder.Replace("numberOccur", NumberOccur.ToString());
regex = new Regex(stringBuilder.ToString());
Match match = regex.Match(ListSentence[index]);
if (match.Success)
{
Console.WriteLine(@"Sentences: {0}
Character: {1}
Number of occurrences in each sentences: {2}",ListSentence[index],stringFinded,match.Groups.Count);
}
else
{
Console.WriteLine("Not found " );
}
}