From: "NARUSE, Yui" Date: 2008-11-04T23:26:39+09:00 Subject: [ruby-list:45613] Re: ruby 1.8.6のNKFにおける漢字変換の不具合について 成瀬です。 京和 崇行 wrote: > と言う結果から、推測アルゴリズムの変更に拠るものではない可能性が高そうです。 >> 句読点があると誤認識しないようです。 > おお、本当ですね。 > ただし、長い文字列であれば一概に問題ないかというとそうでもないようです。 > NKF.nkf("-w", "昨日は餃子専門店に行きました") #=> 文字化け > NKF.nkf("-w", "昨日は池袋にある餃子専門店に行きました") #=> OK > > どちらにせよruby 1.8.5のNKFモジュールであれば問題ありません。 > ちなみに僕が把握している誤認識のケースは文字コード間でバイト列が > 同じものがある場合、nkfだと確かEUCから判定するので、その場合に > 誤って判定されてしまうケースですね。 「nkfだと確かEUCから判定する」ですが、この辺も 2.0.7 の前後でいじってます。 >> 入力文字コードがわかっている場合は明示するべきです。 > 入力の文字コードは不定なので、意図的に入力側の > 文字コードは指定しないようにしています。 不定だから〜というのはよくあるんですが、 経験的に本当に不定なケースはあまりないように感じます。 HTML だとか HTTP の charset だとか。 推測するにカカクコムさんだと Web 系でしょうから、 送信元のフォームがある HTML の文字コード決めうちでいいんじゃないですかね。 -- NARUSE, Yui