| 

.NET C# Java Javascript Exception

0
Ich habe den String "abc?def" und will alle Zeichen ab inkl. dem ? löschen. Wenn keins da ist, will ich dass der string unverändert bleibt. Gibt es dafür eine string-Funktion in C#?
News:
06.08.2009
Mammal 195 2 6
2 Antworten
5
Mit Split und FirstOrDefault geht es auch.

"abc?def".Split('?').FirstOrDefault();
07.08.2009
Traumtänzer 322 2 6
1
Die Lösung gefällt mir. LINQ zeigt immer wieder wie kurz und kompakt Lösungen erstellt werden können.
gfoidl 07.08.2009
2
Mit IndexOf und Remove geht das.

Am einfachsten ist es wenn du dir eine Erweiterungsmethode erstellst die das dann erledigt.
public static class StringExtension
{
public static string RemoveFromSign(this string input, char sign)
{
int index = input.IndexOf(sign);

if (index < 0) // falls das Zeichen nicht enthalten ist.
return input;
else
return input.Remove(index);
}
}
07.08.2009
gfoidl 9,4k 3 5
1
Sollten mehrere String-Operationen auf "das selbe Objekt" durchgeführt werden empfiehlt sich die Verwendung des StringBuilders.
gfoidl 07.08.2009

Stelle deine .net-Frage jetzt!