# String mit Leerzeichen in Variablen zerlegen



## h4rzfear (22. Nov 2013)

Hallo,

ich stehe vor dem Problem einen String des Formats DD MM JJJJ zu haben, den ich zerlegen und anschließend drei Variablen zuweisen möchte. Sprich am Ende soll so etwas da stehen wie int a = dd ,
int b = mm , int c = JJJJ. Die Leerzeichen sind sozusagen die Abgrenzung.

Hoffe ihr könnt mir mir da weiterhelfen, habe nämlich gerade erst mit Java begonnen 

Gruß


----------



## Admiral Helmut (22. Nov 2013)

hi,

vielleicht hilft dir dieses Beispiel weiter:

String test = "ich/bin/ein/tag/";

String[] ergebnis = test.split("/");
String erg1 = ergebnis[0];
String erg2 = ergebnis[1]; usw.

d.h. split teilt an der Stelle die du Übergibst (hier "/")  den string und steckt die einzelnen teile in das Array. je nach dem wieviele teile er trennt -> anzahl im Array

weiss nur nicht genau, ob du ein leerzeichen übergeben kannst.


----------



## Gucky (22. Nov 2013)

Ist von Anfang an das Format klar, mit dem das Datum dargestellt wird? Also es gibt keine anderen Möglichkeiten? Dann streichst du mithilfe der .replaceAll(String); Methode alle Leerzeichen und splittest den String mithilfe der split Methode an den richtigen Orten. (Siehe dazu String in der Javainsel)

Ansonsten guckst du dir erst an, wo die Leerzeichen sind, splittest die Strings dementsprechend auf und entfernst die Leerzeichen wieder mithilfe der .replaceAll(String) Methode.

Anschließend benutzt Integer.parseInt(String), um aus dem String einen Integer zu machen.

Du guckst mithilfe der charAt(int) Metode nach, an welcher Stelle die Leerzeichen sind


----------



## h4rzfear (22. Nov 2013)

Danke euch beiden! Habs mit der Methode von Helmut gemacht und es funktioniert


----------



## Ikaron (22. Nov 2013)

Nur so als Nachtrag, wenn du nicht weißt, ob Leerzeichen oder Punkte o.Ä. als Trennzeichen verwendet wird, kannst du "split" einen regulären Ausdruck übergeben.
Statt
[c].split(" ");[/c]
einfach
[c].split(" |\\.")[/c]
bzw für mehrere Leerzeichen:
[c].split(" +")[/c]
(denke das sollte so stimmen...)
Siehe auch: Java Regex Tutorial


----------

