(Ruby 1.8を使用)Rubyでは、テキスト処理でサポートされていない文字を自動的に変換する方法は?
私は、エンコーディングなどについて簡単に理解しています...しかし、私が知りたいのは、与えられたテキストファイルを扱う任意のスクリプトでは、非標準文字を最も近い印刷可能文字に変換する必要があります。私は "オールインワン"の修正がないことを認識していますが、これは英文のテキストファイルですので、英語のテキストフォーマットでは比較的一般的な問題でなければならないことが緩和されているのだろうかと思います。例えば
は、テキストファイルで、私はこのようなエントリを持っている:
0-823
私はそれを入力したとしてハイフンは文字通りハイフンであること。ファイルでは、ハイフン(nダッシュ?)のようなものですが、コピーして貼り付けると、たとえば、このブラウザのテキストボックスには表示されません。 Rubyスクリプトを経由して、それをプリントアウト
はこれを取得します。
08�23
は、どのように私は私のスクリプトはダッシュにそれを解決するのですか。グレムリン以外の何か?
ああ、ASCIIに型キャストする方法があるかどうかを確認していただけです。ですから、アクセント付きの文字を正規化しようとするサービス、例えばeには、それを扱うための長い正規表現がありますか? – Zando
umm、必ずしもそうではありません。それらは複数の正規表現を持つことができ、そうするために自然言語処理を使用することもできます。例えば、それは文章を読むでしょう(スペイン語で)¿Dondé? 1つの疑問符を持つDond(+)がdondéであることが89%であり、それに応じて処理することが分かっています – sethvargo