From: Martin Duerst Date: 2008-01-15T17:50:44+09:00 Subject: [ruby-dev:33119] Re: String#valid_encoding? shoud be strict? At 02:24 08/01/15, Tanaka Akira wrote: >In article <478B9502.1010306@rubycolor.org>, > Masayoshi Takahashi writes: > >> 【背景】 >> 入力チェック等で、ある文字列があるエンコーディングの範囲内に >> おさまっているか、厳格にチェックしたい場合があります。 >> (おさまっていない場合は再入力をうながしたり、「?」に強制的に >> 置換したりします)。 >> >> 【提案】 >> というわけで、例えば String#valid_encoding? で厳格なチェックが >> できるとうれしいです。具体的には、Shift_JISで、JISにない文字 >> (いわゆる機種依存文字)が含まれている場合、falseになると >> いった具合です。 > >そういう機能はあっていいだろうとは思いますが、とりあえずちょっ >とした疑問がひとつあります。 > >UTF-8 もそういう厳格なチェックを行うんですか? 鬼車の文字属性テスト (\p{Hiragana}とか) をうまい具合組み合わせれば 現在既に可能だと思います。しかしバージョン依存です。 他の文字コードでは変換してみるのは確かに一つの手です。意までも 「変換してみて、例外が発生したらチェック失敗」で可能です。 宜しくお願いします。 Martin. #-#-# Martin J. Du"rst, Assoc. Professor, Aoyama Gakuin University #-#-# http://www.sw.it.aoyama.ac.jp mailto:duerst@it.aoyama.ac.jp