0040 String_delete

Supprimer des caractères

La classe String définit la méthode delete permettant de supprimer des caractères. Très pratique pour filtrer des caractères non voulus. ⚠️ La méthode ne supprime pas des sous-chaine mais chaque caractère présent en argument. delete! modifie l’instance et renvoie nil s’il n’y a pas eu de changement.

0040-string_delete_1.png

delete ne permet pas d’utiliser une expression régulière mais gère 2.5 caractères spéciaux :

  • - pour définir une plage de caractères
  • ^ pour la négation d’un ensemble
  • \ pour échapper l’un de ces 3 caractères

0040-string_delete_2.png

La définition de la méthode est delete(*selectors), le splat operator permet de prendre plusieurs arguments. Dans ce cas ce sera l’intersection de chaque ensemble qui déterminera les caractères à supprimés.

0040-string_delete_3.png

Les liens vers la documentation Ruby de delete et des règles de sélections.