Differenze tra le versioni di "RInStr"

Da Gambas-it.org - Wikipedia.
 
(2 versioni intermedie di uno stesso utente non sono mostrate)
Riga 47: Riga 47:
 
  End
 
  End
  
In console si avrà il seguente risultato:
+
In console verrà mostrata la posizione dell'ultima lettera "a" presente nell'intera stringa, che è relativa alla parola "dell<FONT color=#B22222>a</font>":
 
<BR>15
 
<BR>15
  
Riga 57: Riga 57:
 
  '''Public''' Sub Button1_Click()   
 
  '''Public''' Sub Button1_Click()   
 
    
 
    
   Print <FONT color=B22222>String.RInStr</font>("aèc", "c")  <FONT color=006400>' ''idem con: "aéc", "aòc", "aùc"''</font>
+
   Print <FONT color=B22222>String.RInStr</font>("aèc", "c")  <FONT color=006400>' ''idem con presenza dei caratteri: "é", "à", "ò", "ù"''</font>
 
    
 
    
End
+
'''End'''

Versione attuale delle 16:08, 3 gen 2013

La funzione RInStr restituisce la posizione del primo carattere dell'ultima parola trovata fra due o più eventuali, identiche a quella cercata, all'interno della stringa.{1}


pos = RInstr(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 RInStr restituisce uno zero.


Esempio:

Public Sub Button1_Click()

Dim $prova As String
Dim pos As Integer

 $prova = "chiodo scaccia chiodo"

  pos = RInStr($prova, "chiodo")

  Print pos

End

In console si avrà il seguente risultato:
16


Questa funzione può essere utilizzata anche per conoscere la posizione dell'ultimo 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 = RInStr($prova, "a")

  Print pos

End

In console verrà mostrata la posizione dell'ultima lettera "a" presente nell'intera stringa, che è relativa alla parola "della":
15


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.RInStr("aèc", "c")   ' idem con presenza dei caratteri: "é", "à", "ò", "ù"
 
End