InStr

Da Gambas-it.org - Wikipedia.
Versione del 18 apr 2012 alle 03:13 di Vuott (Discussione | contributi) (Note)

(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

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