• ベストアンサー

シフトJISにおけるマッチング

シフトJIS使用時の日本語のマッチングにおいて 正確なマッチングができないことは分かっているのですが いわゆるダメ文字が含まれていないにもかかわらず マッチングがおかしいことがあります。 ちょう、きゅうなど最後「~う」で終わる言葉のマッチングさせると マッチングするはずがしないのです。 この理由は何が考えられますか? UTF-8に変換してマッチングさせればいいのは分かっているのですが どうしてなのかという理由が知りたいので投稿させていただきました。

  • Perl
  • 回答数1
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

使っている Perl のバージョンと実際にそのような挙動が確かめられる例を見せてください.

masa-25
質問者

お礼

どうもありがとうございます。 「う」という言葉が含まれる言葉での挙動がおかしいので ここに質問させていただいたのですが 昨晩よく見ていたところ禁止ワードの判定前に 「、」などを省くようになっており、 「、」はsjisでは1キロバイトで、\xa4は「う」の2バイト目と一致してしまうからでした。 ご迷惑をおかけしてすみませんでした。 また真剣に相談に乗っていただき、ありがとうございました。

関連するQ&A

  • シフトJISでのフォーム処理

    シフトJISで書かれたPHPのページから日本語をGETで送り、 同じくシフトJISで書かれたPHPのページで受け取った文字を表示させたいのですが 「%8D%5D%8C%CB%90%EC%8B%E6」のような文字になってしまいます。 シフトJISのまま日本語を渡す方法はありますか? 携帯サイトだからなんとなくシフトJISを使っているのですが、 そもそもUTF8で書いた方が良いのでしょうか?

    • ベストアンサー
    • PHP
  • JISとシフトJIS

    現在のPCで広く使われているシフトJISの文字コードと、JIS0208の文字コードの間にはなにか一定のルール(変換できるような)ものがあるのでしょうか?

  • シフトJISからUTF-8に変換

    UNIX系OSのC言語で文字列をシフトJISからUTF-8に変換する方法をご存知の方がいらっしゃいましたらご教授下さい。 なにとぞ宜しくお願いいたします。

  • Shift_JISからUTF-8への変換について

    いつもお世話になります。 UTF-8には4バイト文字がありますが、Shift_JIS(CP932)からUTF-8へ変換する際、 Shift_JISでは2バイトで表わされる文字が、UTF-8では4バイトで表わされてしまう文字はありますでしょうか。 宜しくお願いします。

  • 日本語(シフトJIS)について

    ブラウザで文字化けするという問題を抱えていて、現在METAタグで「シフトJIS」に固定して対応しようと考えているのですが、言語セットの「日本語(シフトJIS)」って、海外版のWindowsでも標準でインストールされているものなのでしょうか? どなたかご存知の方、お返事をお願いいたします。m(_ _)m あと、追加ですが「UNICODE(UTF-8)」の形式で保存できるエディタをご存知でしたら、教えてもらえると有難いです。 よろしくお願いいたします。

  • エンコード 日本語(JIS)が選べない

    教えてください。 Internet Explorer 9 を使用しています。 エンコード  Unicode(UTF-8)が選ばれており、 支障をきたしています。 http://okwave.jp/qa/q8078148.html 上記で支障をきたす理由記載。 日本語(シフト JIS)を選びたいのですが チェックを変えると文字化けしてしまい、 ホームに戻ってみると文字化けが解消されるとともに Unicode(UTF-8)にもどってしまいます。 自動選択にチェックいれてみたりためしましたが どうしてもUnicode(UTF-8)に勝手に戻ってしまいます。 日本語(シフト JIS)を設定するにはどうすればいいでしょうか? ヒントでも結構です! 宜しくお願い致します。

  • JISコードをシフトJISコードに変換する方法

    紙とえんぴつを使ってJISコードをシフトJISコードに変換する方法を教えてください。 たしか16進数の変換などを使って出来ると聞いたことがあります。 一文字の漢字だけで良いんです。 例えば『高』という漢字のJISコード「3962」をシフトJISコード「8D62」に変換したいというわけです。 2進数や16進数の計算の知識だけはあります。よろしくお願いします。

  • シフトJISのエンコード

    JavaScript で、 シフトJISのまま URLエンコードする関数(または 簡単な方法)はないでしょうか? 最近の JavaScript の escape でエンコードすると、日本語コードを 勝手に Unicode に変換してしまいます。 やはり、Unicode と シフトJISの対応表を持った関数を作らないと いけないのでしょうか? みなさんはどうしていますか?

  • unicodeそれともシフトJIS

    さきほど ある質問でhappy_erikaさんの回答を読み、IMEに[UNICODE]と[シフトJIS]があるのを知りました。 (2種あったのは知っていたけど、気にしてなかったんです) ざっと見たところ[UNICODE]のほうが文字数多いですよね。 今まで[シフトJIS]だったんですけど、[UNICODE]に設定すると、困ることってありますか? 初期設定は[シフトJIS]だったように思うのですが、なにか理由はあるのでしょうか? # happy_erikaさん 勉強になりました。ありがとうございます。先ほどの質問で知らないくせに「外字」とか言ってxxx。とっても恥ずかしいですm(_ _)m

  • シフトJIS 2バイト字の範囲

    シフトJISの2バイト文字の範囲は 0x40~0x7e と 0x80~0xfc と 0x40~0xfc のどっちですか? どちらの情報も見たことがあるんです。 シフトJISの文字をマッチングさせる場合、 ここでは見やすく、スペースを入れて / [\x81-\x9f] [\x40-\xfc] | [\xe0-\xfc] [\x40-\xfc] / とした場合、例えば、亜a という文字列があったら 亜 の2バイト目(下位ニブルっていうのかな)が 9F で b は16進で 62 だから、亜 の2バイト目と a が、 2バイトのシフトJISとしてこれにマッチしてしまうんです。 シフトJISで、こういう例外処理を書かずに、 全てに適用できるシフトJIS2バイトマッチのソースが あれば教えてください。

    • ベストアンサー
    • CGI

専門家に質問してみよう