Java: Sonderzeichen löschen und Leerzeichen ersetzen? Stringbuilder?
hallo,
bin ziemlich anfang von java und bin gerade bei Stringbuilder ~
wie kann ich bei java Sonderzeichen im text z. B.: "! ß ; : § $ % &" und so mit Stringbuilder löschen ?
Und bei Leerzeichen z.B. mit "&" oder" ?" auch mit Stringbuilder ersetzen?
private void szeichen(StringBuilder sz)
{????was muss hier rein?}
danke im vorraus :D
1 Antwort
Gegeben sei ein String str, und dein StringBuilder sz. Dann:
foreach (char c in str) {
if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || c == '.'){
sz.Append(c);
}
else if(c == ' ') sz.Append('&');
}
return sz.ToString();
Zu Deutsch:
Für jedes Zeichen des Strings:
Wenn das Zeichen zwischen 0 und 9 liegt, oder zwischen a und z, oder zwischen A und Z, oder ein . , dann wird es beim Output-String angehängt (weil es kein Sonderzeichen ist). Sonderzeichen hingegen werden einfach übersprungen / nicht angehängt. Und wenn das Zeichen eine Leertaste ist wird beim Ouput ein & angehängt.
Und dann wird der Output String zurückgegeben.
Du hast da etwas verwechselt. Die Frage bezieht sich auf Java, nicht C#.
In Java sieht eine foreach-Schleife so aus:
Ein String ist kein iterierbares Objekt. Die Zeichen müssen erst in ein Array / eine Liste / o.ä. verfrachtet werden.
Die Methodennamen Append und ToString werden zu append und toString.