我爭取超過1天,而Google提出了很多請求來解決這個問題而沒有任何結果。 :(Perl比較2種不同編碼的強調字符串(一種是從UTF8文件讀取的)
其實我有下面的代碼讀取文本文件UTF8編碼的名稱列表,我的perl腳本應該停止時,它會發現一個特定的名稱。這些名稱是法語,並經常有一些口音。也就是說當它開始出現行爲異常:
所以這裏是代碼:
#!/usr/bin/perl
$ErrorWordFile = "./myFile.txt";
open FILEcorpus, $ErrorWordFile or die $!;
while (<FILEcorpus>)
{
chomp;
$_=~ s/\r|\n//g;
$normWord=$_;
$string="stéphane";
if($normWord eq $string)
{
print"\nYES!! does work";
}
else
{
print"\nNO does NOT work";
}
}
close(FILEcorpus)
其實語料庫文件(./myFile.txt)包含「斯特凡\ N」作爲唯一的字符
它顯然來了從UTF8編碼的文件和口音,但顯然並不那麼容易。我試過的東西looot包括
use uft8
或
utf8::decode($normWord); without results
withou任何成功:(
任何想法???
非常感謝您的寶貴幫助!
Simon
請仔細閱讀http://stackoverflow.com/questions/6162484/why-does-modern-perl-avoid-utf-8-by-default/6163129#6163129 – innaM