Perl remplacer accent

[Fermé]
Signaler
-
Messages postés
75
Date d'inscription
lundi 26 novembre 2007
Statut
Membre
Dernière intervention
11 mai 2009
-
Bonjour,
je désire remplacer les accents dans un texte entré au clavier (avec <STDIN>) par la lettre non accentué et la ponctuation par des espaces. J'uilise le code ascii, à savoir

print "Veuillez entrer un texte \n";

$texte=<>;

chomp($texte);

$texte=lc($texte);

$texte=~tr/[x00-x2F]/ /;

le problème est que cela ne marche pas pour du texte entré au clavier!!cela marche pour du texte provenant d'un fichier mais pas avec <STDIN>
j'aimerai savoir si qu'elqu'un a une solution?

en vous remerciant

2 réponses

Messages postés
75
Date d'inscription
lundi 26 novembre 2007
Statut
Membre
Dernière intervention
11 mai 2009
56
Tu peux essayer ceci:


Windows:
use open IN => ':encoding(cp1252)';
use open OUT => ':encoding(cp1252)';

DOS:
use open IN => ':encoding(cp850)';
use open OUT => ':encoding(cp850)';

Ou si c'est juste pour des print

use Encode qw/encode decode/;

...
...

print encode("cp850","$texte");


PS: Si quelqu'un connaît un solution portable je suis prenneur.

Dave
2
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci


bonjour, personne n'a d'idée??