Index des n-ten Vorkommens von char in einer Zeichenfolge abrufenC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Index des n-ten Vorkommens von char in einer Zeichenfolge abrufen

Post by Anonymous »

Ich versuche, eine Funktion zu erstellen, die den Index des N-ten Vorkommens eines bestimmten Zeichens in einer Zeichenfolge zurückgibt.

Hier ist mein Versuch:

Code: Select all

private int IndexOfNth(string str, char c, int n)
{
int index = str.IndexOf(c) + 1;
if (index >= 0)
{
string temp = str.Substring(index, str.Length - index);
for (int j = 1; j < n; j++)
{
index = temp.IndexOf(c) + 1;
if (index < 0)
{
return -1;
}
temp = temp.Substring(index, temp.Length - index);
}
index = index + (str.Length);
}
return index;
}
Dies sollte das erste Vorkommen finden, den vorderen Teil der Zeichenfolge abschneiden, das erste Vorkommen aus der neuen Teilzeichenfolge finden und so weiter und so weiter, bis es den Index des n-ten Vorkommens erhält. Ich habe jedoch nicht berücksichtigt, wie der Index des letzten Teilstrings vom ursprünglichen tatsächlichen Index im Originalstring abgesetzt werden soll. Wie mache ich das möglich?

Außerdem als Nebenfrage: Wenn ich möchte, dass das Zeichen das Tabulatorzeichen ist, übergebe ich dann diese Funktion „\t“ oder was?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post