Differenze tra le versioni di "InStr"

Da Gambas-it.org - Wikipedia.
(Note)
 
(Una versione intermedia di uno stesso utente non è mostrata)
Riga 57: Riga 57:
 
  '''Public''' Sub Button1_Click()   
 
  '''Public''' Sub Button1_Click()   
 
    
 
    
   Print String.InStr("aèc", "c")  <FONT color=006400>' ''idem con: "aéc", "aòc", "aùc"''</font>
+
   Print <FONT color=B22222>String.InStr</font>("aèc", "c")  <FONT color=006400>' ''idem con presenza dei caratteri: "é", "à", "ò", "ù"''</font>
 
    
 
    
 
  '''End'''
 
  '''End'''

Versione attuale delle 04:13, 18 apr 2012

La funzione InStr restituisce un integer che rappresenta la posizione del primo carattere della prima parola/sottostringa trovata fra due o più eventuali, identiche a quella cercata, all'interno della stringa.{1}


pos = Instr(stringa, sottostringa_da_cercare [, inizio, comparazione])

Se inizio, che è un integer, è specificato, la ricerca della parola/sottostringa da cercare comincia dalla posizione inizio.
La comparazione può essere o gb.Binary per una comparazione di tipo binario (predefinita); oppure gb.Case per una comparazione insensibile alle maiscole-minuscole.

Se la sottostringa da cercare non viene trovata, allora InStr restituisce uno zero.


Esempio:

Public Sub Button1_Click()

Dim $prova As String
Dim pos As Integer

 $prova = "La pagina della WIKI"

  pos = InStr($prova, "della")

  Print pos

End

In console si avrà il seguente risultato:
11


Questa funzione può essere utilizzata anche per conoscere più semplicemente a posizione del primo di un dato carattere all'interno di una stringa.

Esempio:

Public Sub Button1_Click()

Dim $prova As String
Dim pos As Integer

 $prova = "La pagina della WIKI"

  pos = InStr($prova, "W")

  Print pos

End

In console si avrà il seguente risultato:
17


Note

[1] Per le stringhe in utf bisogna usare la classe String, altrimenti i caratteri particolari come: è, é, ò, à, ù, etc riporteranno un conteggio pari a 2 e non a 1. Quindi per ottenere un conteggio coerente con l'effettiva lunghezza di una stringa nel caso di presenza al suo interno dei predetti caratteri speciali, si opererà come il seguente esempio:

Public Sub Button1_Click()  
  
  Print String.InStr("aèc", "c")   ' idem con presenza dei caratteri: "é", "à", "ò", "ù"
 
End