Avatar billede dragnor Juniormester
16. februar 2006 - 17:21 Der er 7 kommentarer og
1 løsning

tag tekst ud af en string

Hej,

Hvis jeg har en string der ser sådan her ud:

12 : 11112222 : Og så noget tekst i vilkålig længde

Hvis jeg så skal bruge tallet 12 eller tallet 11112222 (det skal bare over i en ny string) eller teskten " Og så noget tekst i vilkålig længde " hvordan gør jeg så det?

det skal lige siges at tallet 12 lige så godt kunne være tallet 10000 , det samme er gældende for tallet 11112222, ligesom længden på teksten også kan variere.

Dragnor
Avatar billede mikkel_sommer Nybegynder
16. februar 2006 - 17:26 #1
Du kan vel splitte den oprindelige streng ved alle :'er ind i et String[]
og så:

String tal1 = array[0];
String tal2 = array[1];
String tekst = array[2];
Avatar billede arne_v Ekspert
16. februar 2006 - 17:28 #2
String s = "12 : 11112222 : Og så noget tekst i vilkålig længde";
String[] parts = s.split(":");

maaske
Avatar billede dragnor Juniormester
16. februar 2006 - 17:29 #3
Ja men hvordan splitter man ved hver :
Avatar billede mikkelbm Nybegynder
16. februar 2006 - 17:31 #4
Det eksempel Arne er kommet med splitter ved hvert kolon!
Avatar billede dragnor Juniormester
16. februar 2006 - 17:31 #5
igen er du en ægte ekspert arne v skriv et svar så du kan få dine velfortjente point
Avatar billede arne_v Ekspert
16. februar 2006 - 17:51 #6
du kan fjerne mellemrum i slut og start med trim metoden

string sfirst = parts[0].trim();

og konvertere til tal med Integer.parseInt metoden

int ifirst = Integer.parseInt(sfirst);

og et svar
Avatar billede arne_v Ekspert
16. februar 2006 - 17:51 #7
om igen
Avatar billede mikkel_sommer Nybegynder
16. februar 2006 - 17:52 #8
Ved ikke om det er dig lige meget men husk du får mellemrumene med eller skal du spille på " : "

Spilt er klart lettest men du kan også anvende substring, noget i retning af:

    String s = "1122 : 111122222 : sdfsdgkjhslkgslkg";
    String tal1 = s.substring(0, s.indexOf(":") - 1);
    s = s.substring(s.indexOf(":") + 2, s.length());
    String tal2 = s.substring(0, s.indexOf(":") - 1);
    System.out.println(s);
    s = s.substring(s.indexOf(":") + 2, s.length());

    System.out.println(tal1);
    System.out.println(tal2);
    System.out.println(s);
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