Dans Ruby, nous pouvons effectuer des opérations de comparaison de chaînes en utilisant diverses méthodes, comme discuté dans ce tutoriel.
Opérateur d'égalité
Deux signes égaux indiquent l'opérateur d'égalité dans Ruby. Il renvoie vrai si les deux objets sont égaux et faux si autrement.
var1 = "bonjour"L'opérateur d'égalité ne se soucie pas tant que les deux objets fournis sont des chaînes valides
var1 = 'bonjour'Si les cordes ne sont pas égales, l'opérateur d'égalité reviendra faux.
var1 = "bonjour"Vous pouvez faire plus que comparer les variables de chaîne. Vous pouvez également comparer un littéral de cordes comme:
"bonjour" == "zéro"Il est bon de noter qu'une chaîne numérique n'est pas directement comparable à une valeur entière.
2 == "2"Inégal
L'opérateur non égal, désigné comme !=, renvoie vrai si les valeurs comparées ne sont pas égales et fausses si elles sont égales. Il agit comme une négation de l'opérateur d'égalité.
"Bonjour" != "Bonjour"Si les valeurs comparées ne sont pas égales, elle renvoie vrai comme:
"Bonjour" != "Bonjour"EQL? Méthode
Ruby a une méthode de chaîne intégrée appelée EQL?. L'EQL? La méthode vérifie si les valeurs sont égales en longueur et en contenu. L'EQL? la méthode renvoie vrai si les valeurs comparées sont égales ou non.
Exemples:
var1 = "bonjour"Dans ce cas, les deux chaînes sont égales en longueur et en contenu.
L'EQL? La méthode est sensible à la casse et reviendra faux si le boîtier n'est pas égal
var1 = "bonjour"Contrairement à l'opérateur d'égalité qui renvoie True lorsque vous comparez un entier et un flotteur, l'EQL? la méthode renvoie false comme:
10 == 10.0Égal? Méthode
Contrairement à l'opérateur d'égalité qui vérifie si les deux valeurs sont égales, l'égalité? La méthode vérifie si les deux opérandes font référence au même objet.
var1 = "bonjour"Vous remarquerez que la méthode renvoie faux car les valeurs ne font pas référence au même objet. Vous pouvez l'obtenir en utilisant object_id comme:
var1.object_idUn exemple des deux opérandes pointant vers le même objet est comme indiqué:
var2 = var1Notation du vaisseau spatial
Ruby fournit également un moyen de comparer les chaînes appelées notation de vaisseau spatial. Nous exprimons cela avec un signe moins que, un signe égal et un plus grand qu'un opérateur.
La méthode renvoie 0 si les chaînes correspondent à -1 si l'opérande gauche est inférieure à l'opérande droit, et 1 si l'opérande droit est supérieur à l'opérande gauche.
"Bonjour bonjour"Méthode CASECMP
Pour effectuer une comparaison insensible au cas, vous pouvez utiliser la méthode CASECMP. Il a des valeurs de retour similaires à la notation du vaisseau spatial.
"Bonjour".casecmp "bonjour"La méthode ignore la sensibilité case et ne compare que le contenu des cordes.
7: Comparaison des plages
Pour comparer si un caractère se trouve dans une plage spécifique, nous pouvons utiliser l'opérateur de plage, donné en utilisant des signes triples égaux ===
("A"… "G") === "D"L'opérateur revient vrai si le personnage est dans la plage et faux si autrement.
Conclusion
Dans ce guide, nous avons discuté de diverses façons de comparer les chaînes dans la langue Ruby.
Merci pour la lecture!