string durchsuchen c#?

1 Antwort

C#:

for (char c in s.Substring(startindex, length) {
  if (char.IsWhiteSpace(c)) {
    doSomething(c);
  }
}

bzw., möglicherweise etwas effektiver:

for (i = startindex; i < endindex; i++) {
  if (char.IsWhiteSpace(c)) {
    doSomething(s[i]);
  }
}

Bei Java sollte es ähnlich sein, meine PHP-Kenntnisse sind ziemlich eingerostet.

Das erste Beispiel funktioniert, da ein C#-String ein IEnumerable<char> ist, das zweite, weil ein C#-String einen Indexer hat, der das Zeichen an einer bestimmten Position zurückgibt. (Ein C#-String ist kein Array<char>! Es verhält sich nur ähnlich.)

Char.IsWhiteSpace(c) prüft, ob c eins der Zeichen ohne Graphem ist (Leerzeichen, Tabulator, Zeilenumbruch etc.)

endindex zeigt, wie üblich, auf das erste Zeichen, das nicht mehr berücksichtigt wird bzw. auf die Position unmittelbar hinter dem String.

Woher ich das weiß:Berufserfahrung – Software-Entwickler