Hallo,
Mein Input String hat die Form:
aaaaalllllssssooooo ddddiiiieeeessss iiiisssstttt eeeeiiiinnnn tttteeeesssstttt
Wie bringe ich das am Einfachsten zu:
also dies ist ein test
Sprich also alle wiederholenden zeichen nach dem a, die auch ein a, sind zu löschen. Wobei a natürlich für die Variable X steht.
Hallo yourmama,
ein schnell implementierter, aber nicht schöner Weg wäre, alle doppelt vorhandenen buchstaben durch ein ein einzelnen buchstaben zu ersetzten.
schleife über alle im string vorhandenen Buchstaben
schleife über IndexOf verdoppelter Buchstabe > 0
string Replace mit dem aktuell verdoppelten Buchstaben durch seinen einzelnen Buchstaben ersetzten
Beispiel:
aktueller Buchstabe ist ein 'a' dann string.Replace("aa", "a").
Das wäre die Verrückte Idee.
ein weitere könnte aufwendig mit Regex realisiert werden.
und noch etwa 100 andere
HErzliche Grüße
Lars
Hallo,
naja, das ist ja einfach. Den String Zeichen für Zeichen mit einer for-Schleife durchgehen und immer das letzte Zeichen speicerhn. Immer wenn ein neues Zeichen kommt als das letzte oder der String zuende ist, wird das Zeichen in einen neuen String geschrieben.
// überprüfunggen muss du selbst einfügen. Code nicht getestet
char LastChar = inputtext[0];
String NewText = "";
for(int i=1;i<inputtext.length;i++)
{
if(inputtext[i] != LastChar)
{
NewText += LastChar;
}
LastChar = inputtext[i];
}
NewText += LastChar;
MfG
Tonka
Hallo zusammen,
alles viel zu aufwändig. Das geht mit einer Zeile:
str = Regex.Replace (str, @"(.)\1+", "$1");
herbivore
PS: Ich glaube ich werde nie verstehen, warum solche Fragen immer wieder in in "GUI: Windows-Forms" gestellt werden. Das hat mit GUI überhaupt nichts zu tun. Es geht rein um String-Verarbeitung ==> verschoben.