Avatar billede skovgaard3 Nybegynder
06. november 2001 - 18:35 Der er 9 kommentarer og
1 løsning

str.split() findes en sådan?

Findes der ikke i java en lignende metode som JavaScript\'s \'split()\'?

fx.:(JS)
{
var test = \"hej1.hej2.hej3\";
var test2 = test.split(\".\")[1];
}
hvor jo så test2 indeholder \"hej2\".
Avatar billede lbhansen Nybegynder
06. november 2001 - 18:40 #1
String test = \"hej1.hej2.hej3\";
java.util.StringTokenizer st = new java.util.StringTokenizer(test,\".\");
while (st.hasMoreTokens()) {
        System.out.println(st.nextToken());
Avatar billede skovgaard3 Nybegynder
06. november 2001 - 19:14 #2
Ja, jeg kender godt StringTokenizer, men ved den har man jo ikke mulighed for at kalde en bestemt plads direkte. Hvis nu strengen indeholdt 10 delstrenge og man ønskede at kalde delstreng 7.

Så må den nemmeste måde vel være (hvis man også fx. ønsker at bruge nogle af delstrengene igen)at gemme dem alle i et array:

String test = \"hej1.hej2.hej3.hej4.hej5.hej6.hej7\";
int i = 0;

java.util.StringTokenizer st1 = new java.util.StringTokenizer(test,\".\");
while (st1.hasMoreTokens())
  i++

i = 0;
String[] test2 = new String[i]

java.util.StringTokenizer st2 = new java.util.StringTokenizer(test,\".\");
while (st2.hasMoreTokens())
{
  test2[i] = st2.nextToken();
  i++
}
for(int j=0; j<test2.length; j++)
  System.out.println(test2[j]);
Avatar billede skovgaard3 Nybegynder
06. november 2001 - 19:17 #3
Må jeg lige spørge, om den måde jeg har brugt til at finde ud af hvor mange delstrenge der er i strengen er nemmeste?
Avatar billede lbhansen Nybegynder
06. november 2001 - 19:20 #4
String test = \"hej1.hej2.hej3\";
java.util.StringTokenizer st = new java.util.StringTokenizer(test,\".\");
java.util.ArrayList al = new ArrayList();
while (st.hasMoreTokens())
    al.add(st.nextToken());
for(int i = 0; i <al.size();i++)
    System.out.println(al.get(i));
Avatar billede lbhansen Nybegynder
06. november 2001 - 19:26 #5
sådan kunne man også lave den. bare et forslag:)
Avatar billede skovgaard3 Nybegynder
06. november 2001 - 19:27 #6
tak, det ser fint ud, men vi kan vel godt blive enige om at JS funktionen split() mangler i java.
Avatar billede lbhansen Nybegynder
06. november 2001 - 19:30 #7
jeg må godt nok indrømme at jeg ikke har savnet den:)
Avatar billede erikjacobsen Ekspert
06. november 2001 - 19:41 #8
Du kan bruge countTokens() til at finde antallet.
Avatar billede lbhansen Nybegynder
06. november 2001 - 19:44 #9
se dét var den fede måde, selvom der nok ikke er så meget at vinde med det. Om ikke andet, så kan man oprette et array, og ikke komme ud for at ens ArrayList ekspanderer sig selv:)
Avatar billede erikjacobsen Ekspert
06. november 2001 - 19:51 #10
Men ellers er split jo kommet i 1.4
http://java.sun.com/j2se/1.4/docs/api/java/util/regex/Pattern.html#split(java.lang.CharSequence)
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