1 返信 最新の回答 日時: Apr 21, 2010 10:12 PM ユーザー:Hiro

    索引のデフォルト言語をunicodeにしないと正常に検索できないのは何故?

    popopo

      タイトル

      索引のデフォルト言語をunicodeにしないと正常に検索できないのは何故?

      フォーラムに投稿

      はじめまして、popopoと申します。

       

       

      FMpro 10を使用しています。

       

      漢字とひらがなが混在したデータを「@」を使用して検索すると、正常な検索結果が得られませんでした。

      フィールドのオプション-索引-デフォルト言語を「日本語」から「unicode」にすると、正常な検索結果が得られました。

      なぜ、「日本語」のままでは、漢字とひらがなの混在したデータが正常に検索できないのかどなたかご教授ください。

       

       

      ■現象

      データ

       「名」フィールドに「亜由美」「あゆ美」「あ由美」「亜ゆ美」の4レコードがあります。

       

      検索画面

       条件「@@美」で検索

       

      設定

       「名」フィールドのオプション-索引-デフォルト言語「日本語」の場合(インストール時に規定値)

       検索結果  「亜由美」のみヒット

       

       「名」フィールドのオプション-索引-デフォルト言語「unicode」の場合

       検索結果  「亜由美」「あゆ美」「あ由美」「亜ゆ美」の4レコードがヒット

       

        • 1. Re: 索引のデフォルト言語をunicodeにしないと正常に検索できないのは何故?
          Hiro
            

          問題は日本語の索引(仕様はブラックボックスで詳細不明)が絡んでいるものと思われます。

          日本語文章は単語区切りなく続くので適当な所で区切り索引が作られます。

          事例では、 かなと漢字で分けられて、「亜由美」「あゆ 美」「あ 由美」「亜 ゆ 美」として索引され、

          これを「@@美」で検索した結果として「亜由美」だけがヒットしたものと考えられます。

          このような場合「美」 で単純検索すると全4レコードがヒットできます。

          但し、ここで妙なのが「亜由美」や「あ 由美」もヒットしたことです。

          理由は、日本語の検索だけがデフォルトの前方一致でなく「部分一致」へFM7以降変更になったからです。

          他の皆さんも、この紛らわしい日本語だけ特別の仕様変更は注意が必要です。

           

          ComputerWorksの鬼頭さんがFMの検索機能の詳しい解説PDFをWeb公開されています。

           「FMP(7以降)の検索機能について」 ダウンロード

          ご覧になられてもいいかも。

          にHiroにより編集されたメッセージ