In meinem Code will ich nur die Nomen (grossgeschriebenen) Wörter rausfiltern. Dies war auch kein Problem. Jedoch sind die Wörter nach den Satzzeichen auch alle gross geschrieben. Nun bin ich seit einigen Stunden am Probieren, wie ich diese Wörter entfernen kann.
Nun kam ich auf die ide, dass sämtliche Zeichenkombinationen gelöscht werden können . [A-Z]
Somit wenn nach einem . ein Leerzeichen und ein Punkt folgt wird dies einfach gelöscht.
Danach kann man den Satz in Wörter zerlegen und die Grossgeschriebenen Wörter rausfiltern.
Nun mein Problem wie muss ich dies eingeben im Regex, dass es mir den Punkt Space und den Anfang des grossen Buchstaben löscht?
static void Main(string[] args)
{
Regex myRegex = new Regex ("[A-ZÄÖÜ]");
Regex myRegex1 = new Regex(". [A-Z]");
String sortiert;
string beispielSatz = "Dies ist der Test Text man benötigt mich, um zu schauen ob die SQL-Anbindung einwandfrei funktioniert. Die Änderungen sind änderbar. Test!";
sortiert = myRegex1.Replace(beispielSatz, "");
Console.WriteLine(sortiert);
Console.WriteLine("-------------------------------------------------------------------");
string[] words = sortiert.Split(' ');
foreach (string word in words)
{
if (myRegex.IsMatch(word))
{
Console.WriteLine(word);
}
}
Console.ReadLine();
}
}