V I S U A L I Z Z A D I S C U S S I O N E |
AlartZero |
Inserito il - 15/09/2007 : 17:06:51 allora vi porgo il mio problema: devo dividere una frase in parole. Niente di piu semplice esiste tokenizer pero se voglio dividere una frase se trova o una virgola o una punto e virgola o un punto e altri caratteri come faccio??
esempio frase = alartzero è bello, magnifico e deficiente!
come faccio a dividerlo in parole senza la punteggiatura?? in modo di avere alartzero è bello magnifico e deficiente
?? |
5 U L T I M E R I S P O S T E (in alto le più recenti) |
AlartZero |
Inserito il - 15/09/2007 : 20:00:17 tanto non era per me, e sinceramente quello di feeb non mi riusciva (per l'esempio di feeb se lo compilavo uscivano p p p in carriage) cmq non è "<carattere>" ma tra i " " ho messo gli ' ' per distinguere i caratteri e sinceramente funge.
poi sinceramente a me non è che mi fregava piu di tanto |
lacrijux |
Inserito il - 15/09/2007 : 18:47:34 Citazione: Messaggio inserito da AlartZero
feeb grazie lo stesso ma grazie ad una intuizione (per merito tuo) ho ottenuto lo stesso risultato. Ho usato
StringTokenizer words = new StringTokenizer(doc, "','?'!',' ','.'");
Alart le espressioni regolari rendono il tuo codice molto + generale... |
feeb |
Inserito il - 15/09/2007 : 17:37:40 Citazione: Messaggio inserito da AlartZero
feeb grazie lo stesso ma grazie ad una intuizione (per merito tuo) ho ottenuto lo stesso risultato. Ho usato
StringTokenizer words = new StringTokenizer(doc, "','?'!',' ','.'");
non penso ti funzioni nel caso di caratteri come ";", ":" etc.
in questo caso, l'espressione [^p{L}] rappresenta tutti i caratteri esclusi quelli alfanumerici, quindi anche "(", "{" etc. vengono esclusi dalla tokenizzazione |
AlartZero |
Inserito il - 15/09/2007 : 17:29:25 feeb grazie lo stesso ma grazie ad una intuizione (per merito tuo) ho ottenuto lo stesso risultato. Ho usato
StringTokenizer words = new StringTokenizer(doc, "','?'!',' ','.'"); |
feeb |
Inserito il - 15/09/2007 : 17:12:20 è un problema che mi son ritrovato ad affrontare anch'io poco tempo fa, ti copincollo direttamente la soluzione
String doc = "blah, blah? blah!.";
StringTokenizer words = new StringTokenizer(doc.replaceAll("[^p{L}]", " "));
while (words.hasMoreTokens()) {
System.out.println(words.nextToken());
}
for more infos: http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html |