したいので無視するアクセントを比較する場合は文字列Perl?
-
23-08-2019 - |
質問
私はこのクイズの応用がかわいタイプの答えです。今僕は基本的には:
if ($input =~ /$answer/i) {
print "you won";
}
いて楽しむのもいいですね、その答えは"魚"のユーザータイプ"魚"に数えられる良い答えです。
問題は私の面でも、私のユーザーにとってフランス、持ってき方など、さすがだなと私を受け入れられていないため、ユーザのキー入力"taton"との回答が"tâton".
なので、何かできることは:
use POSIX qw(locale_h);
use locale;
setlocale(LC_TYPE, "fr_FR.ISO8859-15");
setlocale(LC_COLLATE, "fr_FR.ISO8859-15");
私のチェック、い:
$input = lc($input);
$input =~ tr/àáâãäåçèéêëìíîïñòóôõöùúûüýÿ/aaaaaaceeeeiiiinooooouuuuyy/;
うものの答えです。
それにしても不愉快な話だが、うれしいハードコードでの日はどうしたらよろしいですかこれらのイ...続きを読のISO-8859-15世界のためには、UTF-8の世界では、いよね.
もうってつけなければならないというニーズが比較文字列となる "tâton" eq "taton"
, "maçon" eq "macon"
または "macon" =~ /maçon/
ます。
解決
試しに Text::Unaccent モジュールからはCPAN(または Text::Unaccent::PurePerl).
他のヒント
あなたは、単に許容回答のリストを持っている必要があり、加えて、いくつかのフィルタリングは、「A」、「」、およびその言語固有の同等物のような非必須単語を削除するために -
この正規表現を呼び出すための適切な機会のように見えるしていません。
何をするにしても、それはそれは、文字エンコーディングを認識し、言語を認識しなければならないことを私に明らかに思えます。正規表現は、どちらます。
一般的です所属していません StackOverflow