私は 1 日以上戦っており、Google にはこの問題を解決するための多くのリクエストがありましたが、結果はありませんでした。:(
実際には、名前のリストでエンコードされた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) には、文字として "stéphane\n" のみが含まれています。
これは明らかに、ファイルの UTF8 エンコーディングとアクセントに由来しますが、明らかにそれほど簡単ではありません。私は以下を含む多くのものを試しました
use uft8
また
utf8::decode($normWord); without results
成功せずに:(
何か案が???
あなたの貴重な助けに感謝します!
サイモン