Avatar billede lauritsen Nybegynder
09. januar 2002 - 01:48 Der er 4 kommentarer og
1 løsning

StringTokenizer

Sidder med et problem.. Jeg har en String, jeg gerne vil have delt op i flere bidder, hvilket ikke er noget problem med StringTokenizer, med mindre følgende situation opstår:

En String med følgende indhold skal opdeles ved hver ^-tegn :
String s = \"token 1^^token 3\";

Dette burde give 3 tokens: \"token 1\", \"\" og \"token 3\", men StringTokenizer fanger kun de to, og får ikke den tomme med. Den *skal* jeg dog have med. Nogen forslag?
Avatar billede lauritsen Nybegynder
09. januar 2002 - 03:15 #1
Ha! Hvor var det dog nemt! (bare ikke at finde frem til ;-)

Det viser sig at String har en metode, der gør det hele, og endda på den rigtige måde, nemlig split()

Den smider endda resultaterne i et String[], ganske som jeg ellers ville have gjort manuelt :-)
Avatar billede lauritsen Nybegynder
09. januar 2002 - 03:23 #2
helt præcist bruger jeg (hvis andre skulle være interesserede):

String s = \"token 1^^token 3\";
String[] tokens = s.split(\"\\\\^\");

split() tager en regular expression ind, derfor skal ^-tegnet escapes. Og for at Java-strengen forstår det, skal backslashen også escapes med endnu en backslash.
Avatar billede lbhansen Nybegynder
09. januar 2002 - 03:48 #3
nu skal du bare lige huske at split hører til jdk1.4, som ikke er så udbredt da det kun er i beta.
Avatar billede lauritsen Nybegynder
09. januar 2002 - 04:45 #4
Ah, ok -- sikkert relevant for mange -- takker.
Heldigvis gør det ikke noget for mig.
Avatar billede disky Nybegynder
09. januar 2002 - 08:44 #5
ja det er rart Java har fået reg. exp. med nu.

Men hvad pokker mon man skal gøre i jdk 1.3.1 og ældre ?
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