String Zeichen löschen in einer bestimmten Reihenfolge

Status
Nicht offen für weitere Antworten.

Astra

Aktives Mitglied
Ich muss euch jetzt nochmal stören.
Und zwar geht es um folgendes:
Ich habe einen String, der so ausieht:
Code:
String="0     256   ,,etc";
Ich muss jetzt aus diesem String die ersten 5 leerzeichen löschen und durch ein Komma ersetzen. Und die zweiten 3 Leerzeichen muss ich einfach nur löschen.
Mit replaceAll, könnte ich zwar alle Leerzeichen löschen, aber ich weiss nicht ob es eine Funktion gibt wo ich dann das Komma hinter die 0 setzen kann.
Gibt es irgendwie ne Funktion wo ich z.B. das zweite Zeichen ersetzen kann?
Oder habt ihr noch ne Idee?

Gruß
Astra[/code]
 

Sky

Top Contributor
Wenn es immer nach dem gleichem Schema (die 5 ersten Zeichen ersetzen und dann 3 löschen) geht:

Code:
String s = "0     256   ,,etc";
s = ",,,,," + s.substring(8);

System.out.println(s); // Ausgabe: ,,,,,6   ,,etc

Hier passiert folgendes: Du nimmst alles, was ab Position 8 noch kommt und hängst es an deine Kommas ran.
 

CelikBlek

Bekanntes Mitglied
einfacher geht es mit der methode trim()
wenn du es geschickt verschachtelst mir if else usw. sollte es gehen.
 

Astra

Aktives Mitglied
Also am Ende sollte es so aussehen:
Code:
Von
"0     256   ,,etc"
nach
"0,256,,etc"
Und das stellt sich für mich sehr schwierig dar. :### :autsch:
 

Sky

Top Contributor
Astra hat gesagt.:
Also am Ende sollte es so aussehen:
Code:
Von
"0     256   ,,etc"
nach
"0,256,,etc"
Und das stellt sich für mich sehr schwierig dar. :### :autsch:

Sorry, hatte nicht ganz richtig gelesen. Habe nur auf Zeichen, nicht auf Leerzeichen hin gearbeitet. Ich denke also nochmal nach!
 

Sky

Top Contributor
Ok, ich habe zu Ende gedacht, hier mein nächster Vorschlag:

Code:
    String s = "0     256   ,,etc";
    s = s.replaceFirst("     ", ","); // 5 Leerzeichen durch Komma ersetzen
    s = s.replaceAll(" ", ""); // Alle Leerzeichen Löschen
    System.out.println(s); // Jetzt richtig?
 

Sky

Top Contributor
CelikBlek hat gesagt.:
sollte es nicht etwas flexibeles sein? wenn ja solltet ihr auf trim zurückfreifen.
Warum ist das flexibler?? Mit trim löscht man doch "nur" die Leerzeichen am Anfang und Ende. Man mußte dann per Tokenizer den String auseinandernehmen, dann trimmen und schließlich wieder zusammensetzen. Hört sich für mich erst mal aufwendiger an...
 

CelikBlek

Bekanntes Mitglied
sky80 hat gesagt.:
Ok, ich habe zu Ende gedacht, hier mein nächster Vorschlag:
Code:
    s = s.replaceFirst("     ", ","); // 5 Leerzeichen durch Komma ersetzen
also für mich ist das nicht flexibel. und warum sollte ich den den string per tok. auseinander bauen?
 

Sky

Top Contributor
CelikBlek hat gesagt.:
sky80 hat gesagt.:
Ok, ich habe zu Ende gedacht, hier mein nächster Vorschlag:
Code:
    s = s.replaceFirst("     ", ","); // 5 Leerzeichen durch Komma ersetzen
also für mich ist das nicht flexibel. und warum sollte ich den den string per tok. auseinander bauen?

Das erfüllt die Anforderung "ersetze die ersten 5 Leerzeichen durch ein Komma". Jetzt erklär mir mal bitte, wie ich das mit "trim()" erledige!
 

Astra

Aktives Mitglied
Also aus irgend einem Grund nimmt replaceAll für
Code:
"     "
Logisch wäre es auch für mich :wink:
aber gibt es nicht ein Sonderzeichen für leezeichen?
 

Sky

Top Contributor
Ich glaube da gibt es was bei den RegEx. Es ist "\s" wenn ich mich nicht irre. (Mußte nochmal nachgucken!) Und mit "*" dahinter müsste man eine Menge von Whitespaces ersetzen können. Dann würde der Code so aussehen:

EDIT: CODE ÜBERARBEITET!

Code:
    String s = "0     256   ,,etc";
    s = s.replaceFirst("\\s", ","); // Das Erste Leerzeichen durch Komma ersetzen
    s = s.replaceAll("\\s", "");   // Alle anderen Leerzeiche löschen.
    System.out.println(s);
 

CelikBlek

Bekanntes Mitglied
was machst du denn wenn es 4 leerzeichen sind?
ich trimme es auf einen leerzeichen und schau links und rechts nachbarn an.
wenn index != (0 | maxSize | ',') setze komma. und dann ist es egal ob eins,zwei oder 1000 leerzeichen.
 

Sky

Top Contributor
CelikBlek hat gesagt.:
was machst du denn wenn es 4 leerzeichen sind?
ich trimme es auf einen leerzeichen und schau links und rechts nachbarn an.
wenn index != (0 | maxSize | ',') setze komma. und dann ist es egal ob eins,zwei oder 1000 leerzeichen.

Wie machst Du das mit dem trimmen denn?? Ich verstehe das nicht so ganz. Bitte mal ein paar Zeilen Code dazu schreiben. Danke!
 

Astra

Aktives Mitglied
Super, kleine Abwandlung:

s = s.replaceFirst("\\s", ",");
s = s.replaceAll("\\s", "");
System.out.println(s);

So klappt es wunderbar!
Code:
Also wird zuerst
String s = "0     256   ,,etc";
zu:
String s = "0,    256   ,,etc";
und dann werden alle leerzeichen gelöscht:
String s = "0,256,,etc";

Danke!! :toll: [/code]
 

Sky

Top Contributor
Astra hat gesagt.:
Super, kleine Abwandlung:

s = s.replaceFirst("\\s", ",");
s = s.replaceAll("\\s", "");
System.out.println(s);

So klappt es wunderbar!
Hab's ungefähr im gleichem Moment rausgefunden und meine Post oben geändert. :)
 

wusel81

Mitglied
Hi !

Hab das grad mal ausprobiert aber bei mir geht es einfach nich...

Code:
public class Codierung{
  public static void main(String[] args){

String s = "0     256   ,,etc";
    s = s.replaceFirst("\\s", ","); // Das Erste Leerzeichen durch Komma ersetzen
    s = s.replaceAll("\\s", "");   // Alle anderen Leerzeiche löschen.
    System.out.println(s);
}
}

Bekomme immer folgenden Fehler...
Code:
Codierung.java:27: cannot resolve symbol
symbol  : method replaceFirst  (java.lang.String,java.lang.String)
location: class java.lang.String
    s = s.replaceFirst("\\s", ","); // Das Erste Leerzeichen durch Komma ersetze
n
         ^
Codierung.java:28: cannot resolve symbol
symbol  : method replaceAll  (java.lang.String,java.lang.String)
location: class java.lang.String
    s = s.replaceAll("\\s", "");   // Alle anderen Leerzeiche l÷schen.
         ^
2 errors

Der replace Befehl ist doch aber korrekt angewandt??? Was mache ich falsch ?
 
B

bygones

Gast
mhm - da stimmt was net...

der code ist richtig und wird bei mir auch korrekt ausgeführt !!
 
B

bygones

Gast
nein... mhm - ist dein CLASSPATH richtig gesetzt bzw. arbeitest du mit einer IDE ?
 
B

bygones

Gast
ah - du hast eine zu alte JavaVersion.

die replace Methoden gibt es erst ab 1.4 !!!

also neue Java verison holen
 
B

bygones

Gast
in 1.3 gibt es nur http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html#replace(char,%20char)
 

wusel81

Mitglied
Ja der funzt bei mir aber genausowenig.
Ich will ja einfach nur Leerzeichen aus einem vorher eingegebenem text löschen...

Fehler gefunden... "" funzt mit dem replace befehl nicht... muss '' heißen....
aber leerzeichen nimmt er dann wohl nich...
 

mic_checker

Top Contributor
Hi,
um die führenden/endenen Leerzeichen zu löschen -> trim()

Ansonsten kannst wie ich in dem andern Thread schon mal geschrieben hab, mal nen Blick in StringTokenizer werfen, dort kannst die Delimiter (Trennzeichen) spezifiieren. Standard ist u.a. Leerzeichen (sowie Tabulator etc.)

greets

mic_checker
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Erstes Zeichen aus String löschen Java Basics - Anfänger-Themen 8
E Zeichen in String löschen Java Basics - Anfänger-Themen 15
G wie mehrere Zeichen in string löschen Java Basics - Anfänger-Themen 3
D String, erste zeichen löschen Java Basics - Anfänger-Themen 6
R Größter zusammenhängender Block gleicher Zeichen im String Java Basics - Anfänger-Themen 1
I Eindeutiger String mit maximaler Anzahl an Zeichen Java Basics - Anfänger-Themen 11
A String split funktioniert nicht, wenn mehr als 1 Ziffer vor dem Zeichen steht nach dem er trennen soll? Java Basics - Anfänger-Themen 4
K Wie String prüfen ob drei mal das gleiche Zeichen vorkommt? Java Basics - Anfänger-Themen 7
T Zeichen im String verschiebe Java Basics - Anfänger-Themen 17
J Verschieben von Buchstaben in einem String um vorgegebene Anzahl von Zeichen innerhalb eines weiteren String Java Basics - Anfänger-Themen 12
Dimax Erste Schritte String replace alle Zeichen Java Basics - Anfänger-Themen 10
J Zeichen im String zählen Java Basics - Anfänger-Themen 3
O String von vorne nach hinten an einem Zeichen Java Basics - Anfänger-Themen 10
L String auf bestimmte zeichen untersuchen Java Basics - Anfänger-Themen 9
D gebe string zurück mit von bis bestimmtes Zeichen Java Basics - Anfänger-Themen 4
Y String auf allgemein Zeichen untersuchen Java Basics - Anfänger-Themen 3
S String trennen nach beliebigen Zeichen Java Basics - Anfänger-Themen 3
C Zeichen im String bis zu bestimmter Stelle entfernen Java Basics - Anfänger-Themen 6
S Das Anführungszeichen(") Zeichen in einen String setzen Java Basics - Anfänger-Themen 1
B zeichen eines String mit der kleinsten Frequenz zurückgeben Java Basics - Anfänger-Themen 25
m0n4ch Variablen String auf ungültige Zeichen überprüfen Java Basics - Anfänger-Themen 13
Voreck String Zeichen für Zeichen auslesen Java Basics - Anfänger-Themen 9
R Zeichen in String vergleichen Java Basics - Anfänger-Themen 75
D String Zeichen für Zeichen auslesen Java Basics - Anfänger-Themen 5
D Java doppelte Zahl/Zeichen in einem String entfernen Java Basics - Anfänger-Themen 6
C Anzahl bestimmter Zeichen in einem String ausgeben Java Basics - Anfänger-Themen 7
I String abschneiden erste und letzte Zeichen Java Basics - Anfänger-Themen 3
S Leerzeichen zwischen zwei Zeichen im String entfernen Java Basics - Anfänger-Themen 19
F In einem String nach einem String suchen und Zeichen danach ausgeben Java Basics - Anfänger-Themen 6
Q Erste Schritte Zeichen in String farblich hervorheben Java Basics - Anfänger-Themen 4
P String Zeichen zuweisen Java Basics - Anfänger-Themen 3
P Methode die String auf Zeichen überprüft Java Basics - Anfänger-Themen 2
W String von hinten alle drei Zeichen abschneiden und in umgekehrter Reihenfolge ausgeben. Java Basics - Anfänger-Themen 9
J String Ausgabe nicht-leerer Zeichen nicht korrekt Java Basics - Anfänger-Themen 10
I Zeichen aus String ziehen Java Basics - Anfänger-Themen 3
J Zeichen aus String Array lesen Java Basics - Anfänger-Themen 13
T String - kleinstes Zeichen bestimmen Java Basics - Anfänger-Themen 3
B String der eigentlich eine Ansammlung von HEX zeichen ist in datei schreiben in Hex Java Basics - Anfänger-Themen 8
C String auf bestimmtes Zeichen prüfen Java Basics - Anfänger-Themen 7
G String mit verschiedenen Zeichen analysieren Java Basics - Anfänger-Themen 5
S String mit ASCII/HTML Zeichen darstellen Java Basics - Anfänger-Themen 10
J Ascii Zeichen von einem String umwandeln und ausgeben Java Basics - Anfänger-Themen 11
A einzelne Zeichen aus String auslesen Java Basics - Anfänger-Themen 3
J Aus einem String unbekannte zeichen filtern Java Basics - Anfänger-Themen 11
M zeichen aus string entfernen Java Basics - Anfänger-Themen 2
S Zeichen in einem String hochstellen? Java Basics - Anfänger-Themen 9
M Erstes Zeichen in einem String in Großbuchstaben wandeln Java Basics - Anfänger-Themen 3
D prüfen ob string nur ascii zeichen enthält Java Basics - Anfänger-Themen 7
vandread Kann in einer String-ArrayList keine Zeichen anhängen Java Basics - Anfänger-Themen 5
E Leerstring bzw String mit x Zeichen erzeugen? Java Basics - Anfänger-Themen 13
B OOP String auf bestimmte Zeichen abfragen Java Basics - Anfänger-Themen 4
I String ohne Zeichen zerlegen lassen Java Basics - Anfänger-Themen 5
S String Split ohne Zeichen abzuschneiden Java Basics - Anfänger-Themen 7
Povlsen84 String - Zeichen am Anfang entfernen Java Basics - Anfänger-Themen 11
S Zeichen aus String rausfiltern Java Basics - Anfänger-Themen 4
G Enter-Zeichen aus String ersetzen Java Basics - Anfänger-Themen 5
J String nur mit ASCII-Zeichen Java Basics - Anfänger-Themen 4
S String auf unzulässige Zeichen überprüfen Java Basics - Anfänger-Themen 4
D Zeichen im String ändern -> Fehlersuche Java Basics - Anfänger-Themen 7
G String auf Zeichen überprüfen Java Basics - Anfänger-Themen 6
G HTML Zeichen aus String entfernen? Java Basics - Anfänger-Themen 5
G String vergleichen:Platzhalter für bel. Zeichen Java Basics - Anfänger-Themen 5
M bestimmte Zeichen in String eliminieren Java Basics - Anfänger-Themen 2
G Wieviele Zeichen kann ein String maximal speichern? Java Basics - Anfänger-Themen 3
O String in array einlesen alle x zeichen Java Basics - Anfänger-Themen 15
S Anzahl von Zeichen in einem String suchen und zählen Java Basics - Anfänger-Themen 1
G String ab definiertem Zeichen abschneiden Java Basics - Anfänger-Themen 4
U String um zeichen ergänzen Java Basics - Anfänger-Themen 24
M aus String extrahieren bis zu gewissem Zeichen Java Basics - Anfänger-Themen 7
G String zeichen richtig untreinander Java Basics - Anfänger-Themen 2
L String darf nur spezielle Zeichen enthalten Java Basics - Anfänger-Themen 6
H text string alle 100 zeichen in ein 1D array einlesen ? Java Basics - Anfänger-Themen 8
B nach Zeichen suchen dass im string mehrmals vorkommt Java Basics - Anfänger-Themen 3
M String nach einer bestimmten Anzahl von Zeichen trennen Java Basics - Anfänger-Themen 2
M Aus einem String bestimmte zeichen auslesen und ausgeben Java Basics - Anfänger-Themen 8
G die ersten Zeichen eines Strings Vergleichen mit String Java Basics - Anfänger-Themen 6
W String mit Vorgegebenen Zeichen Java Basics - Anfänger-Themen 3
D String kann zeichen nicht lesen Java Basics - Anfänger-Themen 3
D String/StringBuffer mit Zeichen einer Sorte füllen Java Basics - Anfänger-Themen 14
J String - einzelne Zeichen sortieren Java Basics - Anfänger-Themen 14
A ein string zeichen für zeichen lesen Java Basics - Anfänger-Themen 3
G Zeichen an bestimmter Stelle im String einfügen. Java Basics - Anfänger-Themen 4
B String auf bestimmtes Zeichen überprüfen Java Basics - Anfänger-Themen 7
A String um 1 Zeichen kürzen ? Java Basics - Anfänger-Themen 6
M Ein bestimmtes Zeichen in einem String ändern Java Basics - Anfänger-Themen 4
F Zeichen in String ersetzen mit 1.3 Java Basics - Anfänger-Themen 9
T String mit dem Hexwert in normales Zeichen umwandeln? Java Basics - Anfänger-Themen 6
G letztes Zeichen aus einem String Java Basics - Anfänger-Themen 2
G String auf Länge und Zeichen überprüfen Java Basics - Anfänger-Themen 10
R Zeichen von String zählen Java Basics - Anfänger-Themen 5
N String nach Zeichen ersetzen Java Basics - Anfänger-Themen 6
G String: nach 3. Zeichen char ersetzen Java Basics - Anfänger-Themen 3
O nur bestimmte Zeichen in einem String zählen. Java Basics - Anfänger-Themen 1
Dilandau ascii code von zeichen in string ermitteln? Java Basics - Anfänger-Themen 9
krgewb String mit Datumsangabe in Long umwandeln Java Basics - Anfänger-Themen 2
D String Groß/Kleinschreibung Ignorieren Java Basics - Anfänger-Themen 4
D Map<String, Integer> sortieren und der reinfolge nach die Glieder abfragen Java Basics - Anfänger-Themen 3
J Ähnlichen String in Liste finden Java Basics - Anfänger-Themen 6
Kartoffel_1 String transformation Java Basics - Anfänger-Themen 7
H String-Operation replace() - Zeichenkette verdoppeln Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben