In Ruby, possiamo eseguire operazioni di confronto delle stringhe usando vari metodi, come discusso in questo tutorial.
Operatore di uguaglianza
Due segni uguali indicano l'operatore di uguaglianza in Ruby. Restituisce vero se entrambi gli oggetti sono uguali e falsi se altrimenti.
var1 = "ciao"L'operatore di uguaglianza non importa fintanto che entrambi gli oggetti forniti sono stringhe valide
var1 = 'ciao'Se le stringhe non sono uguali, l'operatore di uguaglianza restituirà falso.
var1 = "ciao"Puoi fare di più che confrontare le variabili di stringa. Puoi anche confrontare una stringa letterale come:
"ciao" == "zero"È bene notare che una stringa numerica non è direttamente paragonabile a un valore intero.
2 == "2"Non uguale
L'operatore non uguale, indicato come !=, restituisce vero se i valori confrontati non sono uguali e falsi se uguali. Agisce come una negazione dell'operatore di uguaglianza.
"Ciao" != "Ciao"Se i valori confrontati non sono uguali, restituisce vero come:
"Ciao" != "Ciao"Eql? Metodo
Ruby ha un metodo di stringa integrato chiamato EQL?. L'EQL? Verifica il metodo se i valori sono uguali sia in lunghezza che in contenuto. L'EQL? Il metodo restituisce vero se i valori confrontati sono uguali o no.
Esempi:
var1 = "ciao"In questo caso, entrambe le stringhe sono uguali in lunghezza e contenuto.
L'EQL? il metodo è sensibile ai casi e ritornerà falso se l'involucro non è uguale
var1 = "ciao"A differenza dell'operatore di uguaglianza che restituisce vero quando si confronta un numero intero e un galleggiante, l'EQL? Il metodo restituisce falso come:
10 == 10.0Pari? Metodo
A differenza dell'operatore di uguaglianza che controlla se entrambi i valori sono uguali, il pari? Verifica il metodo Se entrambi gli operandi fanno riferimento allo stesso oggetto.
var1 = "ciao"Noterai che il metodo restituisce falso poiché i valori non fanno riferimento allo stesso oggetto. Puoi ottenerlo usando Object_id come:
var1.Object_idUn esempio di entrambi gli operandi che indicano lo stesso oggetto è mostrato:
var2 = var1Notazione per astronavi
Ruby fornisce anche un modo per confrontare le stringhe note come notazione per astronavi. Lo esprimiamo con un segno meno che un segno uguale e un operatore.
Il metodo restituisce 0 se le stringhe corrispondono a -1 se l'operando sinistro è inferiore all'operando destro e 1 se l'operando destro è maggiore dell'operando sinistro.
"Ciao ciao"Metodo CasecMP
Per eseguire un confronto insensibile al caso, è possibile utilizzare il metodo CASECMP. Ha valori di ritorno simili alla notazione spaziale.
"Ciao".Casecmp "Hello"Il metodo ignora la sensibilità al caso e confronta solo il contenuto delle stringhe.
7: confronto a portata
Per confrontare se un carattere è in un intervallo specifico, possiamo utilizzare l'operatore di gamma, donati utilizzando segni tripli uguali ===
("a" ... "g") === "d"L'operatore restituisce vero se il carattere è nell'intervallo e falso se altrimenti.
Conclusione
In questa guida, abbiamo discusso di vari modi per confrontare le stringhe nel linguaggio di Ruby.
Grazie per aver letto!