Avatar billede luctatic Nybegynder
12. april 2005 - 19:47 Der er 6 kommentarer og
1 løsning

String.split() og firkantede paranteser

{
String s = "her er noget tekst og den [indeholder] hårde paranteser";
String [] arrays = s.split("[indeholder]");
}


Forestil jer ovenstående kode, hvor der skal splittes en string op i to dele, og hvor den delim man bruger indeholder []. Gør jeg dette, så finder java slet ikke den del af teksten, og det resulterende String[] indeholde hele den String jeg startede med, og ikke to Strings som var planen.

Jeg kan simpelthen ikke se hvorfor den nægter at benytte [] inde i stringen - jeg har endda overvejet om jeg skulle bruge escape chars, men det nægtede den så det kan ikke være det.
Avatar billede arne_v Ekspert
12. april 2005 - 19:52 #1
Prøv:

String [] arrays = s.split("\\[indeholder\\]");
Avatar billede luctatic Nybegynder
12. april 2005 - 19:56 #2
Aha, double \\. Nu er jeg nysgerrig - hvorfor double \\ og ikke bare en enkelt som ved escapechars?
Avatar billede arne_v Ekspert
12. april 2005 - 19:58 #3
du vil sende \ til regex
\ i java er \\
Avatar billede arne_v Ekspert
12. april 2005 - 19:59 #4
du escaper [ i regex som \[ og så escaper du \ i jav aså det bliver \\[
Avatar billede luctatic Nybegynder
12. april 2005 - 20:01 #5
Ah, fair nok. Jamen smid et svar på den, for det var 100% korrekt. Må bare få set lidt mere på regex lader det til.
Avatar billede simonvalter Praktikant
12. april 2005 - 20:02 #6
Avatar billede arne_v Ekspert
12. april 2005 - 20:02 #7
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester