Enlever les accents d’un String Ruby
Ici chez Techniconseils, nous adorons Ruby on Rails pour plusieurs raisons, mais je pense qu’une de ces raisons est certainement la puissance et la flexibilité que le langage Ruby permet. Aujourd’hui, un problème est apparu pour la énième fois et j’ai finalement décidé de le régler.
Je devais convertir une chaine de caractères pour y enlever les accents et ne laisser que les lettres « de base ». Par exemple, je voulais que la chaine « été » devienne tout simplement « ete ». C’est pratique en autre pour transformer un titre en URL.
Le langage Ruby permet d’ajouter des méthodes et des attributs à une classe existante. Avec un petit script, j’ai donc pu ajouter 2 méthodes à la classe String. Si vous avez le même besoin, téléchargez la petite librairie (gratuite, offerte sous licence Creative Commons) et vous pourrez ensuite faire:
"été".removeaccents
Ou même:
"été".urlize
Cette dernière méthode appelle non seulement removeaccents, mais aussi quelques autres pour rendre la chaine prête à être utilisé dans une URL. La libraire est gratuite, alors téléchargez-la, utilisez-la, modifiez-la et envoyez-nous les modifications question que l’on puisse avec la meilleure version téléchargeable en tout temps.
Tags: accents, françaisRubyoII, rails, ruby