Java: String.split(delim) Frage

#2184294
Lesenswert?

Hallo,
ich habe folgendes Programm:
1
String s="1x2x3x4xxxxxxxxxxx";
2
String[] s1=s.split("x");
3
String s2=join(s1,"x");
4
System.out.println(s);
5
System.out.println("s1.length="+s1.length);
6
System.out.println(s2);

Der output ist
1
1x2x3x4xxxxxxxxxxx
2
s1.length=4
3
1x2x3x4

Ich haette erwartet, dass ich mehrere Leer-Strings bekomme,
und dass s1.length=15, d.h. ein Array der Laenge 15, da ich 14 x habe.
Wie kann man so ein Array erzeugen?
Persönliche Seite #2184311
Lesenswert?

Auch wenn die Doku verrät warum das so ist, hat es erst mal nix mit 
Regex zu tun:
>> This method works as if by invoking the two-argument split
>> method with the given expression and a limit argument of zero.
>> Trailing empty strings are therefore not included
>> in the resulting array

mit dem Aufruf:
1
String[] s1 = s.split("x", -1);
 erhält man das gewünschte Ergebnis.
1
1x2x3x4xxxxxxxxxxx
2
s1.length=15
3
[1, 2, 3, 4, , , , , , , , , , , ]
#2184328
Lesenswert?

>mit dem Aufruf:
>String[] s1 = s.split("x", -1);
>erhält man das Gewünschte Ergebnis.
Danke.

If n  is non-positive then the pattern will be applied as many times as 
possible and the array can have any length. If n is zero then the 
pattern will be applied as many times as possible, the array can have 
any length, and trailing empty strings will be discarded.

Da hatte ich drueber gelesen.
Ich war irgendwie fixiert, dass man anhand der Regex das einstellen 
muesste.
An limit hatte ich gar nicht gedacht, dass es was damit zu tun haette.



>lies dir mal die api  doku dazu durch...
>stichwort regex

So ein Betrag laesst mich in die falsche Richtung weiterlaufen.
Ich denke mal, du hast das Problem gar nicht verstanden oder wusstest 
gar keine Loesung. Hast einfach gedacht, ich haette die Doku nicht 
gelesen (was eigentlich selbstverstaendlich ist und sowieso jeder tut)
Gast #2665940
Lesenswert?

ich habe eine Frage:

String a  = "Der Lehrer ist nicht heute gekommen. Ali hat gesagt : \"los 
gehen wir spielen. Das Wetter ist sehr schön.\". Und wir haben zusammen 
Fußball gespielt."


ich möchte die Sätze haben, die nur Zitat " " enthalten.
Also den Satz : Ali hat gesagt : "los gehen wir spielen. Das 
Wetter.....".
wie kann ich das in java schreiben?

danke...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren