Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Token Stringa

  1. #1

    Token Stringa

    Salve, sono un po in difficoltà,ossia data la stringa:
    codice:
    String esprss="(AB((CD)R)FA(RZS)(CS(RT)B) )";
    
    Avrei bisogno di avere come token, i blocchi di parentesi massimali(cioè che comprendono una sotto_espressione) che compongono l'espressione intera.
    Ho provato con StringTokenizer ma non ci sono riuscito 
    
    1  ((CD)R)
    2  (RZS)
    3  (CS(RT)B)
    
    altro esempio per essere sicuri di capirsi:
    
    String espr="(AB(CDR)T(SOP)F(ABC))";
    
    1   (CDR)
    2   (SOP)
    3   (ABC)
    spero di essere stato chiaro,chi mi da qualche consiglio??

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    posta il tuo codice e dicci il tuo problema: non hai il risultato voluto o non sai da dove iniziare a risolvere il problema?
    RTFM Read That F*** Manual!!!

  3. #3
    no volevo qualche consiglio su come iniziare il problema...altrimenti avrei specificato

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    ho capito, però qui non si dice "come si fa", ma si dice "non mi funziona questo codice che ho fatto, magari un altro paio di occhi sa darmi una mano!"
    Se non sai come impostarlo, mica possiamo risolverlo noi per te, se invece c'è un errore nel tuo ragionamento possiamo darti il nostro punto di vista
    RTFM Read That F*** Manual!!!

  5. #5
    Guarda hai ragione,ma a me non piace andare per le lunghe per questo ho scritto in quel modo..!
    io ho fatto questo:
    codice:
    String espr="(AB(BA)BAB(AB))";
    		StringTokenizer st=new StringTokenizer(espr,"(");
    		
    		while(st.hasMoreTokens()){
    			System.out.println(st.nextToken());
    		}
    Siccome mettendo come delimitatore "(" ,mi ritorna tutto quello che precede la parentesi e non è quello che voglio ...mi chiedevo :come idea usare StringTokenizer va bene, o ci sarebbe qualche alternativa che sfugge ai miei occhi poco esperti?

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    già va meglio, allora ci sono 2 soluzioni:

    1. soluzione elegante (ma difficile): scrivere una regex
    2. soluzione brutale, parsare la stringa

    Ora tu hai la forma generale della tua espressione? Cioè come la generi quella stringa? perché a me non viene in mente una regex generica
    RTFM Read That F*** Manual!!!

  7. #7
    no dovrei leggere delle espressioni generiche da tastiera ...

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    si ma queste devono avere un formato generale, devono seguire un pattern o vuoi scrivere una cosa generica per parsare una cosa che non sai nemmeno che formato abbia?
    Il parsing, StringTokenizer, le regex funzionano se conosci in generale COME ti aspetti la stringa, non so se mi spiego
    RTFM Read That F*** Manual!!!

  9. #9
    Guarda io devo leggere delle espressioni che scrivo io generiche di lettere e parentesi ,mi servono i blocchi di parentesi per fare calcoli sulle lettere all 'interno...

  10. #10
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,306
    Si prosegue con questa discussione.

    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 © 2024 vBulletin Solutions, Inc. All rights reserved.