Confrontare due stringhe

Da Gambas-it.org - Wikipedia.

Per confrontare due stringhe, al fine di verificare se sono uguali non solo sotto il profilo dei valori ASCII dei caratteri (ossia se si tratta delle medesime lettere dell'alfabeto), ma anche sotto il profilo della esatta corrispondenza tra lettere maiuscole e lettere minucole, si possono utilizzare almeno tre rapide modalità:

  • l'operatore =, che è sensibile alle maiuscole (case sensitive);
  • l'operatore ==, che non è sensibile alle maiuscole (case insensitive), e che pertanto ci consente di comparare le due stringhe ma anche sotto il profilo della esatta corrispondenza
  • il metodo ".Comp( )" della Classe String, tenendo presente che in modalità prestabilità la comparazione è "case insensitive". Per rendere tale comparazione "case sensitive", è necessario aggiungere al terzo parametro della funzione la costante "gb.IgnoreCase".


Mostriamo un semplice esempio completo:

Public Sub Main()
 
 Dim s1 As String = "gambas"
 Dim s2 As String = "Gambas"
 
' Verifica se le due stringhe sono uguali sotto ogni profilo:
  If s1 = s2 Then Print "Si" Else Print "No"
  If s1 == s2 Then Print "Si" Else Print "No"
  If String.Comp(s1, s2) Then Print "Si" Else Print "No"
  If String.Comp(s1, s2, gb.IgnoreCase) Then Print "Si" Else Print "No"
  
End