Differenze tra le versioni di "Verifica "passo-passo" di ciascun carattere in una data stringa"
Da Gambas-it.org - Wikipedia.
Riga 4: | Riga 4: | ||
==Conoscere ciascun carattere di una stringa mediante la funzione ''Mid()''== | ==Conoscere ciascun carattere di una stringa mediante la funzione ''Mid()''== | ||
Mostreremo di seguito un possibile codice che utilizza la funzione ''Mid()'': | Mostreremo di seguito un possibile codice che utilizza la funzione ''Mid()'': | ||
− | ''<Font Color= | + | ''<Font Color=gray>' Gambas class file''</font> |
'''Public''' Sub Button1_Click() | '''Public''' Sub Button1_Click() | ||
Riga 12: | Riga 12: | ||
− | <Font Color= | + | <Font Color=gray>' ''Fingiamo che la stringa, composta da caratteri e loro quantità a noi non conosciuti, sia questa:''</font> |
a$ = "Verifica passo-passo della stringa" | a$ = "Verifica passo-passo della stringa" | ||
− | <Font Color= | + | <Font Color=gray>' ''Iniziamo il controllo carattere dopo carattere per l'intera lunghezza della stringa:''</font> |
For b = 1 To Len(a$) | For b = 1 To Len(a$) | ||
− | <Font Color= | + | <Font Color=gray>' ''Mostriamo in console il risultato intero della verifica'' |
' ''(il " ''';''' " alla fine della funzione Mid$ consentirà di vedere i caratteri in allineamento orizzontale):''</font> | ' ''(il " ''';''' " alla fine della funzione Mid$ consentirà di vedere i caratteri in allineamento orizzontale):''</font> | ||
Print Mid$(a$, b, 1); | Print Mid$(a$, b, 1); | ||
Riga 31: | Riga 31: | ||
− | == | + | |
− | + | ==Conoscere ciascun carattere di una stringa mediante la funzione ''Asc()''== | |
− | '''Public''' | + | Mostreremo di seguito un possibile codice che utilizza la funzione ''Asc()'': |
− | + | '''Public''' Sub Button1_Click() | |
− | + | ||
− | + | Dim i As Short | |
− | + | Dim testo As String | |
− | + | ||
− | + | ||
− | + | testo = "Testo qualsiasi" | |
− | + | ||
− | + | For i = 1 To Len(testo) | |
− | + | ||
− | + | Print Chr(Asc(testo, i)) | |
− | + | ||
+ | Next | ||
'''End''' | '''End''' | ||
Riga 66: | Riga 67: | ||
Next | Next | ||
+ | |||
+ | '''End''' | ||
+ | |||
+ | |||
+ | |||
+ | ==Sapere quante volte è presente un dato carattere in una stringa== | ||
+ | L'algoritmo precedente ci consente di crearne anche un altro per sapere quante volte è presente un dato carattere in una stringa: | ||
+ | '''Public''' Function cercaCarattere(testo As String, carattere As String) As Short | ||
+ | |||
+ | Dim j, trovato As Short | ||
+ | |||
+ | For j = 1 To Len(testo) | ||
+ | <Font Color=gray>' ''Se il carattere controllato è uguale a quello che si sta cercando...:''</font> | ||
+ | If Mid(testo, j, 1) = lettera Then | ||
+ | <Font Color=gray>' ''...allora incrementa di un'unità il valore della variabile integer che tiene il conto:''</font> | ||
+ | Inc trovato | ||
+ | Endif | ||
+ | Next | ||
+ | |||
+ | Return trovato | ||
'''End''' | '''End''' |
Versione delle 15:52, 16 apr 2015
Per conoscere ciascun carattere componente una stringa di una qualunque lunghezza e composizione, anche contenente spazi fra le parole, si potrà utilizzare la funzione Mid() oppure la funzione String.Code().
Indice
Conoscere ciascun carattere di una stringa mediante la funzione Mid()
Mostreremo di seguito un possibile codice che utilizza la funzione Mid():
' Gambas class file Public Sub Button1_Click() Dim a$ As String Dim b As Integer ' Fingiamo che la stringa, composta da caratteri e loro quantità a noi non conosciuti, sia questa: a$ = "Verifica passo-passo della stringa" ' Iniziamo il controllo carattere dopo carattere per l'intera lunghezza della stringa: For b = 1 To Len(a$) ' Mostriamo in console il risultato intero della verifica ' (il " ; " alla fine della funzione Mid$ consentirà di vedere i caratteri in allineamento orizzontale): Print Mid$(a$, b, 1); Next End
In console avremo coerentemente la scritta:
Verifica passo-passo della stringa
Conoscere ciascun carattere di una stringa mediante la funzione Asc()
Mostreremo di seguito un possibile codice che utilizza la funzione Asc():
Public Sub Button1_Click() Dim i As Short Dim testo As String testo = "Testo qualsiasi" For i = 1 To Len(testo) Print Chr(Asc(testo, i)) Next End
Conoscere ciascun carattere di una stringa mediante la funzione String.Code()
Mostreremo di seguito un possibile codice che utilizza la funzione String.Code():
Public Sub Button1_Click() Dim i As Short Dim testo As String testo = "Testo qualsiasi" For i = 1 To Len(testo) Print Chr(String.Code(testo, i)) Next End
Sapere quante volte è presente un dato carattere in una stringa
L'algoritmo precedente ci consente di crearne anche un altro per sapere quante volte è presente un dato carattere in una stringa:
Public Function cercaCarattere(testo As String, carattere As String) As Short Dim j, trovato As Short For j = 1 To Len(testo) ' Se il carattere controllato è uguale a quello che si sta cercando...: If Mid(testo, j, 1) = lettera Then ' ...allora incrementa di un'unità il valore della variabile integer che tiene il conto: Inc trovato Endif Next Return trovato End