Je suis perplexe avec ce script de test:Pourquoi mes tests Perl échouent-ils avec `use encoding 'utf8'`?
#!perl
use strict;
use warnings;
use encoding 'utf8';
use Test::More 'no_plan';
ok('áá' =~ m/á/, 'ok direct match');
my $re = qr{á};
ok('áá' =~ m/$re/, 'ok qr-based match');
like('áá', $re, 'like qr-based match');
Les trois tests échouent, mais je me attendais que la use encoding 'utf8'
amélioreraient les deux le áá
littéral et les qr
regexps à base de chaînes de UTF8, et passant ainsi la tests.
Si je supprime la ligne use encoding
les tests passent comme prévu, mais je ne peux pas comprendre pourquoi ils échoueraient en mode utf8
. J'utilise perl 5.8.8 sur Mac OS X (version du système).
Dans le passé, j'ai toujours utilisé 'utf8' et j'ai utilisé l'utf8 au cours de la dernière année. quelque part que 'use utf8' a été cassé et que je devrais utiliser' use encoding 'utf8''. Il semble que j'ai besoin de revoir toute la question à nouveau ... Merci – melo