(57)【特許請求の範囲】
【請求項１】
文字列をもとにデータベースから類似文字列を検索する類似文字列検索システムにおいて、
短縮前のカナの文字列と短縮後のカナの文字列とを対応づけて登録するためのデータベースと、
前記データベースから類似文字列を検索する検索条件としてのカナの文字列に含まれる長音、撥音を削除した後、拗音、促音を大文字にする第１の変換手段と、
前記第１の変換手段によって変換した後のカナの文字列を、ローマ字の文字列に変換する第２の変換手段と、
前記第２の変換手段によって変換した後のローマ字の文字列に含まれる子音であるＹ、Ｗを少なくとも削除、およびＶをＢ、ＪをＤに少なくとも変換する第３の変換手段と、
前記第３の変換手段によって削除あるいは変換した後のローマ字の文字列に含まれる連続母音について、連続する２つの母音を１つの母音に変換して短縮する規則を登録した変換テーブルを参照し、短縮する短縮手段と、
前記短縮手段によって短縮後のローマ字の文字列を、カナの文字列に逆変換する第４の変換手段と、
前記第４の変換手段によって逆変換した後の短縮後のカナの文字列を検索キーとして、前記データベースを検索して一致する短縮後のカナの文字列を見つけ、当該見つけた短縮後のカナの文字列に対応づけて登録されている短縮前のカナの文字列を抽出して出力し、利用者により登録指示されると、短縮前のカナの文字列に基づいて、短縮後のカナの文字列に対応づけて短縮前のカナの文字列をデータベースに追加登録する検索・登録手段と
を有することを特徴とする類似文字列検索システム。
【請求項２】
コンピュータを、
短縮前のカナの文字列と短縮後のカナの文字列とを対応づけて登録するデータベースから類似文字列を検索する検索条件としてのカナの文字列に含まれる長音、撥音を削除した後、拗音、促音を大文字にする第１の変換手段と、
前記第１の変換手段によって変換した後のカナの文字列を、ローマ字の文字列に変換する第２の変換手段と、
前記第２の変換手段によって変換した後のローマ字の文字列に含まれる子音であるＹ、Ｗを少なくとも削除、およびＶをＢ、ＪをＤに少なくとも変換する第３の変換手段と、
前記第３の変換手段によって削除あるいは変換した後のローマ字の文字列に含まれる連続母音について、連続する２つの母音を１つの母音に変換する規則を登録した変換テーブルを参照し、短縮する第１の短縮手段と、
前記第１の短縮手段によって短縮後のローマ字の文字列を、カナの文字列に逆変換する第４の変換手段と、
前記第４の変換手段によって逆変換した後の短縮後のカナの文字列を検索キーとして、前記データベースを検索して一致する短縮後のカナの文字列を見つけ、当該見つけた短縮後のカナの文字列に対応づけて登録されている短縮前のカナの文字列を抽出して出力し、利用者により登録指示されると、短縮前のカナの文字列に基づいて、短縮後のカナの文字列に対応づけて短縮前のカナの文字列をデータベースに追加登録する検索・登録手段と
して機能させるプログラムを記録したコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、文字列をもとにデータベースから類似文字列を検索する類似文字列検索システムおよび記録媒体に関するものである。
【０００２】
【従来の技術】
従来、商品名などのカタカナからなる文字列と類似の文字列がデータベースに登録されているか否かの類似検索を行う場合、入力された文字列についてデータベースを検索する際に、類似辞書を参照して
・「ウ”」（ウの濁点を表す）を「ブ」
・「ヂ」を「ジ」
・「オオ」、「オウ」、「オー」を「オオ」
・「コオ」、「コウ」、「コー」を「コウ」
などに変換した後に、データベースを検索して同一の類似文字列が存在する否かをチェックするようにしていた。また、新たな類似文字と判断された場合には、類似辞書に追加登録してデータベースの全部を再検索するようにしていた。
【０００３】
【発明が解決しようとする課題】
上述したようにカタカナからなる文字列と類似の文字列をデータベースから検索する場合、類似辞書を参照して類似文字に変換した後に、データベースを検索して同一の類似文字列があるか否かをチェックしていたため、類似辞書に登録されていない類似文字列は検索できなく、しかも文字列の類似検索にバラツキが発生してしまうという問題があった。
【０００４】
本発明は、これらの問題を解決するため、文字列から特定の子音部を削除および連続母音についてテーブルを参照して変換し文字列の短縮を行った後、データベースを検索して類似文字列を見つけ、類似辞書なしにデータベースからバラツキなく類似文字列の検索を実現することを目的としている。
【０００５】
【課題を解決するための手段】
図１を参照して課題を解決するための手段を説明する。
図１において、文字列削除手段２は、入力された文字列中の特定の子音を削除するものである。
【０００６】
文字列短縮手段３は、入力された文字列について変換テーブル４を参照して少ない文字列に短縮するものである。
変換テーブル４は、文字列中に含まれる短縮する対象の文字列と短縮後の文字列を対応づけて登録するものであって、例えば文字列中に含まれる短縮する対象の連続母音と短縮後の母音を対応づけて登録するものである。
【０００７】
データベース５は、商品名などの文字列を登録したものである。
次に、動作を説明する。
文字列短縮手段３が入力された文字列について変換テーブル４を参照して少ない文字列に短縮し、短縮した後の文字列をもとにデータベース５を検索して類似文字列を見つけるようにしている。
【０００８】
また、文字列削除手段２が入力された文字列中の特定の子音を削除した後、文字列短縮手段３が削除後の文字列について変換テーブル４を参照して少ない文字列に短縮し、短縮した後の文字列をもとにデータベース５を検索して類似文字列を見つけるようにしている。
【０００９】
これらの際に、変換テーブル４に文字列中に含まれる短縮する対象の連続母音と短縮後の母音を対応づけて登録するようにしている。
また、データベース５内の文字列について、予め特定の子音を削除および変換テーブル４を参照して少ない文字列に短縮し、対応づけて登録するようにしている。
【００１０】
従って、入力された文字列から特定の子音部を削除および連続母音について変換テーブル４を参照して変換し文字列の短縮を行った後、データベース５を検索して類似文字列を見つけることにより、従来の類似辞書なしにデータベース５からバラツキなく類似文字列を精度高く迅速に検索することが可能となる。
【００１１】
【発明の実施の形態】
次に、図１から図６を用いて本発明の実施の形態および動作を順次詳細に説明する。ここで、記録媒体から読み出したプログラムあるいは外部記憶装置であるハードディスク装置などから読み出したプログラム、またはセンタの外部記憶装置から読み出して回線を介して転送を受けたプログラムを主記憶にローディングして起動し、以下に説明する各種処理を行うようにしている。
【００１２】
図１は、本発明のシステム構成図を示す。
図１において、検索装置１は、プログラムに従ってデータベース５を検索して商品名などの文字列と同一および類似の文字列を検索するものであって、ここでは、文字列削除手段２、文字列短縮手段３、および変換テーブル４から構成されるものである。
【００１３】
文字列削除手段２は、入力された文字列から特定の子音（例えばＹ、Ｗの削除）を行うものである（図３を用いて後述する）。
文字列短縮手段３は、入力された文字列中の連続母音について変換テーブル４を参照して母音に変換などした文字列を短縮するものである。
【００１４】
変換テーブル４は、文字列中に含まれる短縮する対象の文字列（例えば連続母音）と短縮後の文字列（母音）とを対応づけて登録したものである（図３の（ｃ）参照）。
【００１５】
データベース５は、商品名などの文字列およびその類似名を対応づけて登録したものである。
表示装置６は、入力された文字列や類似検索結果を表示したりするものである。
【００１６】
入力装置７は、検索対象の文字列を入力したりなどを行うものである。
次に、図２のフローチャートに示す順序に従い、図１の構成の動作を詳細に説明する。
【００１７】
図２は、本発明の動作説明フローチャートを示す。
図２において、Ｓ１は、名前を入力する。これは、商品名や競馬における競走馬名などの類似検索対象の名前を入力する。
【００１８】
Ｓ２は、発音文字に変換する。これは、後述する図３のフローチャートに従い、入力文字をカタカナに変換し、長音（−）や「ン」の削除、拗音、促音の大文字化、特定の子音部（Ｙ、Ｗ）の削除、ＶをＢ、ＪをＤに変換、連続母音を変換テーブル４を参照して母音に変換した短縮した後、カタカナに逆変換し、短縮した文字列（類似文字列）を得る（図３ないし図４を用いて後述する）。
【００１９】
Ｓ３は、名前ＤＢを検索する。この際、変換名（Ｓ２で変換した類似文字列）をキーに名前ＤＢ（例えば図１のデータベース５）を検索する。
Ｓ４は、類似変換名のあり、なしを判別する。ありの場合には、Ｓ２で変換した類似変換名（類似文字列）と一致する類似名とその登録名を取りだし、Ｓ６で登録済みの変換名（登録名）と類似名を表示（例えば後述する図５参照）し、Ｓ７に進む。一方、Ｓ４のＮＯの場合には、変換名（類似文字列）と一致するものがデータベース５になかったので、Ｓ５で類似名なしとしての通知を行い、Ｓ７に進む。
【００２０】
Ｓ７は、名前ＤＢへの追加指示の有無を促す。
Ｓ８は、追加するという指示があったか判別する。ＹＥＳの場合には、Ｓ９で名前ＤＢ（図１のデータベース５）への追加情報の入力を行い、Ｓ１０で名前ＤＢへ登録する。例えば後述する図５に示すように、登録名に対応づけて類似名（変換名）を図１のデータベース５に追加登録する。一方、Ｓ８のＮＯの場合には、追加登録の指示がなかったので、終了する。
【００２１】
以上によって、名前（文字列）を入力するのみで、システムが自動的にＳ２で後述する図３および図４のフローチャートに示す手順に従い文字列の短縮を行って類似文字列に変換し、変換後の類似文字列をキーとして、データベース５を検索して一致する類似名を持つエントリの登録名と当該類似名（類似文字列）を例えば後述する図５に示すように表示する。表示された類似する文字列のうちの登録名に類似するものが見つからないときは、追加登録し、データベース５を更新する。
【００２２】
図３は、本発明の発音文字変換ルールの説明図を示す。これは、既述した図２のＳ２の発音文字に変換するときの手順を詳細に説明したものである。以下説明する。
【００２３】
図３の（ａ）は、フローチャートを示す。
図３の（ａ）において、▲１▼は、入力（カタカナ）する。ここでは、例えば右側の図３の（ｂ）に記載したように、文字列
・アヤカジュニア
を入力する。
【００２４】
▲２▼は、長音（−）、（ン）の削除、および拗音、促音の大文字化を行う。ここでは、拗音は例えば「ジュニア」中の「ュ」であり、これを大文字「ユ」に変換する。促音は例えば「マック」中の「ッ」であり、これを大文字「ツ」に変換する。ここでは、例えば右側の図３の（ｂ）に記載したように、文字列
・アヤカジユニア
と変換する。
【００２５】
▲３▼は、ローマ字変換し、子音と母音を分離する。ここでは、例えば右側の図３の（ｂ）に記載したように、ローマ字変換し
・ＡＹＡＫＡＺＩＹＵＮＩＡ
とし、子音と母音を分離する。
【００２６】
▲４▼は、子音部の削除・変換（Ｙ、Ｗの削除、Ｖ→Ｂ、Ｊ→Ｄ）する。ここでは、例えば右側の図３の（ｂ）に記載したように、子音を削除し
・ＡＡＫＡＺＩＵＮＩＡ
とする。
【００２７】
▲５▼は、連続母音の変換（変換テーブルによる）を行う。ここでは、例えば右側の図３の（ｂ）に記載したように、図３の（ｃ）の変換テーブル４を参照してＡＡをＡ、ＩＵをＵ、ＩＡをＡに変換し、
・ＡＫＡＺＵＮＡ
とする。
【００２８】
▲６▼は、カタカナに変換する。ここでは、例えば右側の図３の（ｂ）に記載したように、ローマ字をカタカナ読みにして
・アカズナ
とする。
【００２９】
▲７▼は、出力（カタカナ）する。
以上の▲１▼ないし▲７▼の処理によって、入力文字列「アヤカジュニア」が類似文字「アカズナ」に短縮されて出力されることとなる。
【００３０】
図３の（ｂ）は、変換例を示す。これは、入力文字「アヤカジュニア」を▲１▼ないし▲７▼の処理によって変換される要素をそれぞれ示したものである。
図３の（ｃ）は、変換テーブル例を示す。この変換テーブル４の左側の縦は１文字目を表し、上側の横は２文字目を表す。この変換テーブル４により、連続する２母音単位に１文字の母音に短縮されることとなる。例えば３連続母音「ＡＩＵ」は、第１回目に先頭の２連続母音「ＡＩ」を「Ａ」に短縮し、第２回目にこれと残りを併せた２連続母音「ＡＵ」を「Ａ」に更に短縮し、結果として３連続母音「ＡＩＵ」を１母音「Ａ」に短縮できたこととなる。
【００３１】
図４は、本発明の連続母音の変換フローチャート（図３の▲５▼の詳細説明）を示す。
図４において、Ｓ１１は、連続母音を見つける。例えば既述した図３の（ａ）の▲３▼の右側の図３の（ｂ）の文字列
・ＡＡＫＡＺＩＵＮＩＡ
中から「ＡＡ」、「ＩＵ」、「ＩＡ」の３つの２連続母音をそれぞれ見つけ、先頭から順にＳ１２以降の処理を行う。
【００３２】
Ｓ１２は、変換テーブル４を参照して短縮する。これは、Ｓ１１で見つけた例えば連続母音「ＡＡ」について、図３の（ｃ）の変換テーブル４を参照し、「Ａ」に短縮する。
【００３３】
Ｓ１３は、連続母音がなくなったか判別する。ＹＥＳの場合には、終了する。ＮＯの場合には、Ｓ１１に戻り繰り返す。
以上によって、既述した図３の（ａ）の▲４▼の右側の図３の（ｂ）の
・ＡＡＫＡＺＩＵＮＩＡ
が
・ＡＫＡＺＵＮＡ
に短縮されることとなる。
【００３４】
図５は、本発明の類似名の検索例を示す。これは、入力文字列「アヤカジュニア」について、既述した図３の（ｂ）の変換例によって変換した類似文字列「アカズナ」をキーに図１のデータベース５を検索し、一致する類似名を持つエントリの登録名と当該類似名、番号を取り出してそのリストを表示したものである。
【００３５】
以上のように、入力文字列「アヤカジュニア」について図３の（ａ）のフローチャートに従い類似文字列「アカズナ」に変換した後、この類似文字列「アカズナ」をキーにデータベース５中から一致する類似名を検索するのみで当該類似名に対応づけて登録されている登録名を図示の下記のように極めて迅速に検索して表示することが可能となる。
【００３６】
0004136055.tif 000002
図６は、本発明のデータベースへの類似名の登録フローチャートを示す。
【００３７】
図６において、Ｓ２１は、データベースをアクセスする。これは、商品名などの文字列が登録されている既存のデータベースをアクセスする。
Ｓ２２は、文字列を１つ取り出す。
【００３８】
Ｓ２３は、類似名に変換する。これは、Ｓ２２で取り出した文字列について、既述した図３および図４の手順に従い、類似名（類似文字列）に変換する。例えば文字列「アヤカジュニア」を類似名「アカズナ」に変換する。
【００３９】
Ｓ２４は、追加登録する。これは、Ｓ２２で取り出した文字列とＳ２３で変換した類似名を対応づけてデータベース５に追加登録する。
以上によって、データベース５中の文字列に対応づけてＳ２３で変換した類似名が登録されるので、検索時に類似名をキーに一致検索を行い、類似名が一致するエントリの当該類似名と登録名を既述した図５に示すように検索して表示することが可能となる。この際、類似名をキーに一致する類似名を検索し、当該類似名とその登録名を全て取り出して表示するのみで、類似検索ができ、極めて高速にデータベース５中から類似する文字列を検索することが可能となった。
【００４０】
【発明の効果】
以上説明したように、本発明によれば、入力された文字列から特定の子音部を削除および連続母音について変換テーブル４を参照して変換し文字列の短縮を行った後、データベース５を検索して類似文字列を見つける構成を採用しているため、従来の類似辞書なしにデータベース５からバラツキなく類似文字列を精度高く極めて高速に検索して表示できる。これらにより、
（１）  従来の類似音を類似辞書登録により判定検索していた場合に比し、検索もれが少なくなった。
【００４１】
（２）  また、従来では例えばウ”（ウの濁点を表す）→ブ、ヂ→ジ、オオ、オウ、オ→オオ、コオ、コウ、コ→コオなどを類似辞書登録して統一的に変換を行ってからデータベース検索していたため、類似音が見つかる毎に類似辞書登録してからデータベースを全件検索する必要があり、検索に手間がかかると共に検索速度が遅かった問題点について、本発明では類似辞書を不要としこれらの問題を解決できた。
【図面の簡単な説明】
【図１】本発明のシステム構成図である。
【図２】本発明の動作説明フローチャートである。
【図３】本発明の発音文字変換ルールの説明図である。
【図４】本発明の連続母音の変換フローチャートである。
【図５】本発明の類似名の検索例である。
【図６】本発明のデータベースへの類似名の登録フローチャートである。
【符号の説明】
１：検索装置
２：文字列削除手段
３：文字列短縮手段
４：変換テーブル
５：データベース
６：表示装置
７：入力装置
【図１】
0004136055.tif 000003
【図２】
0004136055.tif 000004
【図３】
0004136055.tif 000005
【図４】
0004136055.tif 000006
【図５】
0004136055.tif 000007
【図６】
0004136055.tif 000008