Casser des chaînes de caractères longues sur plusieurs lignes en ruby sans supprimer les sauts de lignes

Créé le 09 Dec 2022 - Mis à jour le 04 Jul 2023 - Créé par Fabien Berthoux - ruby-on-railsruby

Lorsque vous travaillez avec des chaînes de caractères longues en Ruby, vous voudrez peut-être les casser sur plusieurs lignes pour une meilleure lisibilité, sans supprimer les sauts de lignes. Pour le faire, vous pouvez utiliser le caractère d'échappement \ qui peut être placé à la fin d'une ligne pour dire à Ruby de continuer la chaîne de caractères sur la ligne suivante. Cela permet d'écrire des chaînes de caractères longues sur plusieurs lignes, sans qu'elles ne soient coupées au milieu des mots. Par exemple, si vous vouliez écrire une chaîne de caractères qui commence par "Hello World", vous pourriez l'écrire comme ceci: ```ruby long_string = "Hello World\ This is a long string" ``` Cette chaîne de caractères sera évaluée comme une seule ligne de code, mais elle sera plus lisible que si elle était écrite sur une seule ligne. Vous pouvez également utiliser le caractère d'échappement \ pour ajouter des tabulations, des sauts de lignes et des retours chariot à votre chaîne de caractères.

Comment puis-je vérifier si une chaîne de caractères est longue ?


Vous pouvez utiliser la méthode `String.length` pour vérifier la taille d'une chaîne de caractères. Cela vous donnera le nombre de caractères dans la chaîne, y compris les espaces, les tabulations et les sauts de ligne. Par exemple, si vous vouliez vérifier si une chaîne était plus longue que 50 caractères, vous pourriez écrire une condition pour le vérifier :

long_string = "Hello World\
               This is a long string"

if long_string.length >> 50
  puts "This string is longer than 50 characters!"
end

Comment puis-je ajouter des sauts de lignes à une chaîne de caractères ?


Vous pouvez utiliser le caractère d'échappement \ pour ajouter des sauts de lignes à une chaîne de caractères. Cela peut être utile lorsque vous souhaitez créer des chaînes de caractères multilignes pour une meilleure lisibilité. Par exemple, si vous vouliez ajouter un saut de ligne à une chaîne de caractères, vous pourriez l'écrire comme ceci :

long_string = "Hello World\
               This is a long string"

Comment puis-je ajouter des tabulations à une chaîne de caractères ?


Vous pouvez utiliser le caractère d'échappement \ pour ajouter des tabulations à une chaîne de caractères. Par exemple, si vous vouliez ajouter un tab indent à une chaîne de caractères, vous pourriez l'écrire comme ceci :

long_string = "Hello World\
               \tThis is a long string"

Quels sont les autres caractères d'échappement que je peux utiliser ?


En plus du caractère d'échappement \ pour les sauts de lignes et les tabulations, vous pouvez également utiliser des caractères d'échappement pour ajouter des caractères spéciaux comme le retour chariot ou les retours arrière. Par exemple, si vous vouliez ajouter un retour chariot à une chaîne de caractères, vous pourriez l'écrire comme ceci :

long_string = "Hello World\
               \rThis is a long string"