Ich möchte die mittleren drei Zeichen einer gegebenen Zeichenfolge mit ungerader Länge abrufen. Eg. wennErhalten von mittleren drei Zeichen einer Zeichenfolge mit ungerader Länge
string original = "India" // expected output - "ndi"
string original = "America" // expected output - "eri"
Ich versuchte den folgenden Code und es funktioniert wie pro Anforderung, aber ich fragte mich, gibt es einen besseren Weg für das gleiche?
public string GetMiddleString (string original)
{
string trimmed = string.Empty;
int midCharIndex = (original.Length/2);
if ((original.Length) % 2 != 0)
{
trimmed = original.Substring (midCharIndex - 1, 3);
}
else
{
trimmed = original;
}
return trimmed;
}
Bei Übergabe von 'null' und einer einzigen Zeichenfolge werden Ausnahmen ausgelöst. Eine Zeichenfolge mit zwei Zeichen gibt ein falsches Ergebnis zurück, und eine Zeichenfolge mit vier Zeichen hat das falsche Ergebnis. – asawyer
@asawyer Ja Ich werde den Code in meinem Projekt mit Ausnahmebehandlung und zum Überprüfen von Nullwerten entsprechend bearbeiten. Vielen Dank. – RahulD
Was ist eine "ungerade Zeichenfolge"? Eins mit einer Länge, die eine ungerade Zahl ist? Was lässt Sie glauben, dass Ihr Code nur mit solchen Zeichenfolgen aufgerufen wird? –