6

私は perl で書かれた英語のフォーラム サイトを持っていますが、ロシア語のスパムが絶えず殺到しています。Perl と正規表現を使用してロシア語のテキストを検出し、ブロックできる方法はありますか?

4

2 に答える 2

9

以下を使用して、キリル文字 (ロシア語で使用)を検出できます。

[\u0400-\u04FF]+

本当にロシア語の文字が必要な場合は、前述のドキュメントを参照してください。これには、基本的なロシア語のアルファベットに使用される正確な範囲が含まれています[\u0410-\u044F]. もちろん、ロシア語でのみ使用される拡張キリル文字も考慮する必要があります。このドキュメントにも記載されています。

于 2009-09-09T08:04:07.787 に答える
3

すべてがそのようにエンコードされている場合は、JGによって提案されているUnicodeキリル文字セットを使用しても問題ありません。ただし、これはスパムであり、ほとんどの場合、そうではありません。さらに、スパマーはスパムに文字セットを組み合わせて使用​​することが非常に多く、このアプローチをさらに台無しにします。

ロシアのスパムを検出する最良の方法(または少なくともプロセスの準備段階)は、最も一般的に使用される文字セットをgrepすることです。

koi8-r
windows-1251
iso-8859-5

その後の次のステップは、残っているものに対していくつかの言語検出アルゴリズムを試すことです。それが十分に大きな問題である場合は、google translate(これも「検出」)やxeroxなどの有料サービスを使用してください。これらのサービスは、IMOに最高の言語検出を提供します。

于 2009-09-09T17:40:10.813 に答える