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= #006400>' Gambas class file''</font>
+
  ''<Font Color=gray>' Gambas class file''</font>
 
   
 
   
 
  '''Public''' Sub Button1_Click()
 
  '''Public''' Sub Button1_Click()
Riga 12: Riga 12:
 
    
 
    
 
   
 
   
  <Font Color= #006400>' ''Fingiamo che la stringa, composta da caratteri e loro quantità a noi non conosciuti, sia questa:''</font>
+
  <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= #006400>' ''Iniziamo il controllo carattere dopo carattere per l'intera lunghezza della stringa:''</font>
+
  <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= #006400>' ''Mostriamo in console il risultato intero della verifica''
+
  <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:
  
  
==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:
+
==Conoscere ciascun carattere di una stringa mediante la funzione ''Asc()''==
  '''Public''' Function cercaCarattere(testo As String, carattere As String) As Short   
+
Mostreremo di seguito un possibile codice che utilizza la funzione ''Asc()'':
   
+
  '''Public''' Sub Button1_Click()
  Dim j, trovato As Short   
+
     
   
+
  Dim i As Short
  For j = 1 To Len(testo)  
+
   Dim testo As String 
<Font Color= #006400>' ''Se il carattere controllato è uguale a quello che si sta cercando...:''</font>
+
    If Mid(testo, j, 1) = lettera Then 
+
     
<Font Color= #006400>' ''...allora incrementa di un'unità il valore della variabile integer che tiene il conto:''</font>
+
    testo = "Testo qualsiasi" 
      Inc trovato 
+
               
     Endif   
+
    For i = 1 To Len(testo)
  Next  
+
     
   
+
      Print Chr(Asc(testo, i))
    Return trovato  
+
     
 +
     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().


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