3 votes

Comment utiliser les caractères unicode dans une expression régulière en Ruby ?

J'essaie d'écrire une ligne de code qui prend une ligne de texte japonais et supprime un certain nombre de caractères. Cependant, j'ai des difficultés à utiliser des caractères unicodes dans l'expression régulière.

J'utilise actuellement text.gsub(/.*?/u, '') mais je reçois l'erreur

'gsub': invalid byte sequence in Windows-31J (Argument error)

Quelqu'un peut-il me dire ce que je fais de manière incorrecte ?

Exemple de texte :

Résultat escompté :

Merci

éditer : # encoding: utf-8 est présent en haut du script.

2voto

khal Points 2320

Essayez ça :

text.encode('utf-8', 'utf-8').gsub(/《.*?》/u, '')

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X