Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [java] Stringtokenizer su più caratteri

    ciao

    ho un problema, ho questo codice

    codice:
    import java.util.StringTokenizer;
    
    public class Tokens {
      public Tokens() {
      }
      
      public static void main(String []args){
        
        String a=new String("dasdsadasdsa[[dasdasdsadas[[3343[[43242423[[423423[242423");
        StringTokenizer t=new StringTokenizer(a,"[[");
        
        while(t.hasMoreTokens()){
          System.out.println(t.nextToken());      
        }
      }
    }

    il problema è che il tokenizer mi separa anche l'ultimo token, dove ho:
    423423[242423

    anche se c'è solo un carattere [

    questo è l'output

    codice:
    dasdsadasdsa
    dasdasdsadas
    3343
    43242423
    423423
    242423
    mentre dovrebbe essere


    codice:
    dasdsadasdsa
    dasdasdsadas
    3343
    43242423
    423423[242423
    "durante i primi 5 miuti di pioggia nel bosco c'è ancora asciutto, poi quando smetterà di piovere nel bosco cadranno gocce per 5 minuti.....la natura ha un'ottima memoria..."

    http://www.kumbe.it

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,115
    Devi costruirti uno StringTokenizer personalizzato. Ho avuto anch'io dei problemi simili quando ho realizzato la mia chat Java: il metodo che si occupa di gestire i messaggi da parte degli utenti della chat deve capire quando ci sono i "tag" per le immagini e questo genera tutta una serie di problemi.

    In alternativa puoi utilizzare il metodo split() della classe String che prende come argomento una stringa che rappresenta un'espressione regolare da utilizzare come separatore:
    codice:
    String a = "Ciao[Da[[Tutti";
    String [] arr = a.split("\\[\\[");
    System.out.println( arr[0] );
    System.out.println( arr[1] );
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2019 vBulletin Solutions, Inc. All rights reserved.