Newsgroup: it.comp.lang.visual-basic
Titolo: Ricerca di stringhe uguali in una frase

Allora la mia domanda č questa (premetto non ho ancora guardato su google,
lo farň dopo aver postato x' mi servono quante piů soluzioni č possibile):
in una stringa si possono sapere quante parole esistono e quante di queste
si ripetono?
ESEMPIO: la mia mamma č tanto brava. la mia mamma cucina bene. la mia mamma
lava bene.
Parole trovate e loro ripetizione
la [3]
mia [3]
mamma [3]
č [1]
tanto [1]
brava [1]
cucina [1]
bene [2]
lava [1]
ora qui era facile perchč c'erano gli spazi come separatori .. ma in una
stringa di questo tipo
ESEMPIO: lamiamammačtantobravalamiamammacucinabenelamiamammalavabene
Parole trovate e loro ripetizione
la [3]
mia [3]
mamma [3]
č [1]
tanto [1]
brava [1]
cucina [1]
bene [2]
lava [1]
si puň avere lo stesso risultato .. o meglio voi come fareste ..??
grazie a chi mi risponderŕ... :D
--
 .. [t]Eo ..
|| TORNO SUBITO ||
" .. Sono fuori di testa. Tornerň tra cinque minuti .."

Se vuoi riuscire a trovare ripetizioni di parole non separate da spazio
l'unica soluzione che hai è quella di avere un database pieno di parole...ma
comunque la ricerca sarebbe quasi proibitiva perchè ci sono parole che sono
composte da altre parole più qualche altra cosa...e non ti sarebbe possibile
capire in questo caso  qual'è quella corretta a meno che non implementi un
programma che è in grado di comprendere il senso delle frasi...però
nell'ultimo caso mi sà che hai svariati anni di lavoro.
Gianni

 ha scritto nel messaggio
news:b2fm8t$ht5$1...@newsreader.mailgate.org...

Guarda che qui l'esempio era fatto di lettere .. ma potrebbe anche trattarsi
di numeri o di simboli .. che non si sanno a priori ..
--
 .. [t]Eo ..
|| TORNO SUBITO ||
" .. Sono fuori di testa. Tornerò tra cinque minuti .."


Cominci dall'inizio, cerchi il primo carattere che separi le parole (spazio,
virgola, punto, parentesi, ecc...). Ottieni cosě la prima parola. Conti le
occorrenze della stessa parola nel testo complessivo, e memorizzi parola e
conteggio come primo elemento di un array.
Cerchi la parola successiva. Se non č nell'array, conti le occorrenze, e la
metti come elemento successivo del medesimo array.
Ripeti fino alla fine della stringa.
Usando chiamate ricorsive, o dei loop in maniera furba, mi sembra una cosa
abbastanza semplice.
Si tratta solamente di avere un po' di pazienza nel mettere giů il codice.
Ciao
Alberto

 si puň avere lo stesso risultato .. o meglio voi come fareste ..??
Questa mi era sfuggita...
Bisogna che tu indichi cosa vuoi avere.
Gli stessi risultati che hai postato sono paleesemente sbagliati.
Ad esempio, non hai citato le parole 'ama', 'cina','cuci','ava','ami', e
sicuramente altre che sono comprese ma che possono essere identificate
solamente con un dizionario della lingua.
Se neppure tu hai ben chiaro cosa ottenere, č difficile non solo aiutarti,
ma anche immaginare una soluzione.
Riflettici sopra poi sappimi dire.
Alberto

 Alberto
Ciao
--
 .. [t]Eo ..
|| TORNO SUBITO ||


 Alberto
--
 .. [t]Eo ..
|| TORNO SUBITO ||


 So cosa voglio ..
Ma non l'hai espresso molto bene. I tuoi esempi nel primo post sono diversi
da quello che hai detto adesso.
Ciao
Alberto

 si ripetono?
Mi sembra che quello che vuoi ottenere sia ciò che fanno i compressori:
determinare le ripetizioni per sostituirle con sequenze più brevi.
Credo che il metodo migliore sia usare lo stesso sistema, anche se non è
molto semplice.
Forse qualcuno ha già avuto esperienza con gli alberi binari e ti può dare
una mano.
Eventualmente posso consigliarti delle parole chiave da cercare in google.
Ciao

 Ciao
ciauz
--
 .. [t]Eo ..
|| TORNO SUBITO ||


 suggerisci suggerisci .. grazie
Prima devo ricordarmi in quale libro ho letto di 'sta roba :)
Mi riprometto di controllare al più presto.
Ciao
--
Math Parser : 
http://www.neodatatype.net
Sito Comune : 
http://www.it-lang-vb.net

 suggerisci suggerisci .. grazie
Prova a cercare (non garantisco nulla)
Termini in italiano:
"Algoritmi greedy", "alberi binari", "huffman", "codici di huffman",
"algoritmo di huffman".
Posso premettere che non so se il gioco ne vale la candela.
Qualcosa su huffman mi pare ci sia anche sul Sito Comune.


 Ciao
CIAUZ
[t]Eo
