JPH06168270A - インデックスを用いた文字列検索システム及びそのインデックスの作成装置 - Google Patents

インデックスを用いた文字列検索システム及びそのインデックスの作成装置

Info

Publication number
JPH06168270A
JPH06168270A JP5011171A JP1117193A JPH06168270A JP H06168270 A JPH06168270 A JP H06168270A JP 5011171 A JP5011171 A JP 5011171A JP 1117193 A JP1117193 A JP 1117193A JP H06168270 A JPH06168270 A JP H06168270A
Authority
JP
Japan
Prior art keywords
character
character string
document file
data
index
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP5011171A
Other languages
English (en)
Other versions
JPH07113926B2 (ja
Inventor
Masahiro Nakada
正弘 中田
Kenichi Uchiumi
研一 内海
Takeshi Nakahara
毅 中原
Satoshi Furumura
聡 古村
Takashi Tsubokura
孝 坪倉
Satoshi Itami
敏 伊丹
Hiroshi Suzuki
浩 鈴木
Kyoko Miyabe
恭子 宮部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP5011171A priority Critical patent/JPH07113926B2/ja
Publication of JPH06168270A publication Critical patent/JPH06168270A/ja
Publication of JPH07113926B2 publication Critical patent/JPH07113926B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【目的】 本発明はインデックスを用いて文字列を検索
する文字列検索システム及びそのインデックスの作成装
置に関し、容易かつ高速に検索できるようにすることを
目的としている。 【構成】 各文字に対応した位置データを次文字データ
とを示すインデックスを用い、検索キーにおいて所定の
文字の次の文字が次文字データによって特定される文字
と等しいか否かを該インデックスを参照して判定し、そ
れらの文字が等しい場合に、インデックス内の位置デー
タに基づいて得られる検索結果を出力するようにした。
また、文書ファイルを順次サーチし、その過程で位置デ
ータ及び次文字データを得るようにし、この得られた位
置データ及び次文字データによってインデックスを構成
するようにした。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はインデックスを用いた文
字列検索システム及びそのインデックスを作成する装置
に係り、詳しくは、インデックスを参照して検索キーと
して入力された文字列を文書ファイルから検索するよう
にした文字列検索システム及びその文字列検索システム
において使用されるインデックスを作成する装置に関す
る。
【0002】
【従来の技術】従来、二種類の文字列検索システムが提
案されている。第一の種類の文字列検索システムでは、
インデックスを使用することなく文書ファイル内の文字
から文字列を検索している。即ち、文書ファイルが読ま
れ、検索キーに対応した文字列が文書ファイル内でサー
チされる。第二の種類の文字列検索システムでは、イン
デックスを参照して文書ファイル内の文字から文字列を
検索している。即ち、検索キーとなるであろう言葉が文
書ファイルから抽出され、この抽出された言葉に関する
インデックスが予め作成される。そして、入力された検
索キーに対応する文字列がインデックスを参照してサー
チされる。
【0003】
【発明が解決しようとする課題】しかし、上記第一及び
第二の種類の文字列検索システムは次のような欠点を有
する。
【0004】第一の種類の文字列検索システムでは、文
書ファイル内のすべての文字を読まなければならないの
で、多くの文字を含む文書ファイルを検索する場合、検
索時間が増大してしまう。また、第二の種類の文字列検
索システムでは、各文書ファイルにおいて検索キーとな
り得る言葉を選ぶことが難しい。従って、インデックス
を作成するために多くの時間がかかる。更に、インデッ
クス内に含まれていない文字列を検索することができな
い。
【0005】上記第二の種類の文字列検索システムに類
似するシステムが、例えば、特開昭64−8441に開
示される。この文字列検索システムには、文書ファイル
を形成する文字に対応したエントリーを有するアドレス
テーブルが設けられる。このアドレステーブルでは、文
書ファイル内の同じ文字はエントリに格納されたアドレ
ス情報を用いてリンクされている。検索キーに対応した
文字列はこのアドレステーブルを参照して検索される。
【0006】このシステムにおいては、文書ファイル内
のすべての文字のためのエントリーをアドレステーブル
に用意しなければならない。例えば、文字列を検索する
ために“平仮名”はほとんど使われないにもかかわら
ず、“平仮名”に対応したエントリをアドレステーブル
に設けなければならない。従って、大容量のアドレステ
ーブルが必要になる。
【0007】本発明は上記の点に鑑みてなされたもので
あり、高速検索が可能で、インデックスが容易に作成で
き、汎用性の高い文字列検索システムを提供することを
第一の目的としている。
【0008】また、このような文字列検索システムにお
いて使用されるインデックスを容易に作成することので
きるインデックス作成装置を提供することを第二の目的
としている。
【0009】
【課題を解決するための手段】本発明は、複数の文字を
含む文書ファイルから検索キーに対応した文字列を検索
する文字列検索システムにおいて、上記第一の目的を達
成するために、文書ファイル内の各文字の位置を特定す
るための位置データと文書ファイル内の各文字の次に配
置される文字又は文字列を特定するための次文字データ
とを示すインデックスと、検索キーに対応した文字列を
構成する文字から第一の文字を選択する選択手段と、検
索キーにおいて、上記選択手段にて選択された第一の文
字の次に配置された文字又は文字列が第一の文字に対応
した次文字データによって特定される文字又は文字列に
等しいか否かをインデックスを参照して判定する判定手
段と、該判定手段が、検索キーにおいて第一の文字の次
の文字又は文字列が第一の文字に対応した次文字データ
によって特定される文字又は文字列に等しいと判定した
ときに、インデックス内の第一の文字に対応した位置デ
ータに基づいて得られる検索結果を出力する出力手段と
を備えるようにした。
【0010】また、上記第一の目的を達成するため、複
数の文字を含む文書ファイルから検索キーに対応した文
字列を検索する文字列検索システムにおいて、文書ファ
イル内の各文字の位置を特定するための位置データと文
書ファイル内の各文字の次に配置される文字又は文字列
を特定するための次文字データとを示すインデックス
と、検索キーに対応した文字列を構成する文字から第一
の文字を選択する選択手段と、検索キーにおいて、上記
選択手段にて選択された第一の文字の次に配置された文
字又は文字列が第一の文字に対応した次文字データによ
って特定される文字又は文字列に等しいか否かをインデ
ックスを参照して判定する第一の判定手段と、第一の文
字に対応する位置データによって特定される位置を含む
文書ファイル内の所定領域に検索キーの文字によって構
成された文字列があるか否かを判定する第二の判定手段
と、該第二の判定手段が、その文字列が文書ファイルの
該所定領域にあると判定したときに、インデックス内の
第一の文字に対応した位置データに基づいて得られる検
索結果を出力する出力手段とを備えるようにした。
【0011】更に、本発明は、複数の文字を含む文書フ
ァイルから検索キーに対応した文字列を検索する文字列
検索システムにて使用され、文書ファイル内の各文字の
位置を特定する位置データと文書ファイル内の各文字の
次に配置される文字又は文字列を特定する次文字データ
とを示すインデックスを作成する装置において、上記第
二の目的を達成するため、文書ファイル内の文字を一文
字ずつ順次捜すサーチ手段と、インデックス内において
該サーチ手段によって捜された文字の次に配置される所
定数の文字を検出する検出手段と、サーチ手段によって
捜された文字が文書ファイル内で位置する位置データ
と、検出手段によって検出された一又は複数の文字を特
定する次文字データとを記録するリスト手段とを備え、
この位置データと次文字データとによりインデックスを
形成するようにした。
【0012】また、複数の文字を含む文書ファイルから
検索キーに対応した文字列を検索する文字列検索システ
ムにおいて用いられ、各文字が文書ファイルに出現する
頻度をあらわす頻度データを載せたインデックスを作成
する装置において、上記第二の目的を達成するため、文
書ファイル内の文字を一文字ずつ順次捜すサーチ手段
と、サーチ手段によって捜された各文字が文書ファイル
内に出現する回数をカウントするカウント手段と、該カ
ウント手段にて得られたカウント値に対応した頻度デー
タを記録するリスト手段とを備え、この頻度データによ
ってインデックスを形成するようにした。
【0013】
【作用】検索キーに対応した文字列を構成する文字から
第一の文字が選択される。選択された第一の文字の次に
配置される検索キー内の文字又は文字列が第一の文字に
対応するインデックス内の次文字コードによって特定さ
れる文字又は文字列と等しい場合、この検索キーに対応
した文字列が文書ファイル内に存在したことになる。そ
して、位置データに基づいて得られる検出結果(検索キ
ーに対応した文字列が存在する位置)が出力手段から出
力される。
【0014】また、選択された第一の文字の次に配置さ
れる検索キー内の文字又は文字列が第一の文字に対応す
るインデックス内の次文字コードによって特定される文
字又は文字列と等しい場合、更に、その第一の文字に対
応した位置データによって特定される位置を含む文書フ
ァイル内の所定領域に検索キーに対応した文字列がある
と、位置データに基づいて得られる検索結果が出力手段
から出力される。
【0015】上記インデックスを作成する場合、文書フ
ァイル内の文字が一文字ずつ順次サーチされる。そし
て、その際サーチされた各文字の位置を特定する位置デ
ータと、その各文字の次に配置される所定数の文字を特
定する次文字データとが記録される。この位置データと
次文字データによってインデックスが作成される。
【0016】また、各文字が文書ファイルに出現する頻
度をあらわす頻度データを示すインデックスを作成する
にあたって、文書ファイル内の文字が一文字ずつ順次サ
ーチされ、サーチされた各文字が文書ファイル内に出現
する回数がカウントされる。そして、このカウント値に
対応した頻度データが記録される。
【0017】
【実施例】以下、本発明の実施例を図面に基づいて説明
する。
【0018】文字列検索システムは例えば図1に示すよ
うなコンピュータシステム内に構築される。図1におい
て、CPU(中央演算処理ユニット)10、メモリ1
1、キーボード制御回路13、外部記憶装置制御回路1
5、ディスプレイ制御回路17がシステムバス20によ
って結合されている。メモリ11は種々の制御プログラ
ムを格納するための制御プログラム記憶領域11aと種
々のデータを格納するためのデータ記録領域11bとを
有している。キーボード制御回路13はキーボード12
に接続され、キーボード12から入力される指示、検索
キーのようなデータ等がキーボード制御回路13を介し
てシステムバス20に供給される。光ディスクユニット
14が外部記憶装置制御回路15に接続されている。文
書ファイルと文字列検索システムにて使用される該文書
ファイルに対応したインデックスが光ディスクユニット
14に格納されている。キーボード12から入力された
検索キーに対応する文字列が、インデックスを参照し
て、キーボード12によって入力された情報によって特
定される文書ファイルから検索される。検索結果はディ
スプレイ制御回路17を介してディスプレイユニット1
6に供給され、そのディスプレイユニット16に表示さ
れる。
【0019】図2(b)に示す検索キーに対応する文字
列が図2(a)に示す文書ファイルから検索される場合
について説明する。
【0020】文書ファイルから文字列を検索するために
使用されるインデックスはあらかじめ作成され光ディス
クユニット14に格納されている。図3に示すような出
現頻度表及びアドレス表がインデックスに含まれる。出
現頻度表には文書ファイル内の文字を示す各文字コード
に対応した出現頻度データが記録されている。出現頻度
データは、各文字が文書ファイル内に出現する頻度を表
わす。出現頻度表において、文字コードが対応する出現
頻度データの小さい順に配列されている。同じ出現頻度
データの文字コードはその文字コードの値の小さい順に
配列されている。図2(a)に示す文書ファイルにおい
て、文字“B”が文書ファイルに出現する頻度は“1”
(最小値)である。従って、文字コード“B”と対応す
る出現頻度データ“1”は出現頻度表の先頭に位置す
る。文字“U”が文書ファイルに出現する頻度は“3”
(最大値)である。従って文字コード“U”と対応する
出現頻度データ“3”は出現頻度表の最終端に位置す
る。文字コード“F”に対応する出現頻度データは文字
コード“I”に対応する出現頻度データは同じである。
文字コード“F”の値は文字コード“I”の値より小さ
い。従って、出現頻度表において、文字コード“I“と
対応する出現頻度データ“2”が文字コード“F”と対
応する出現頻度データ“2”の次に配置されている。
【0021】アドレス表には、各文字の文書ファイル内
での位置を特定するアドレス情報が記録されている。各
文字の位置は文書ファイルの先頭からのバイト数によっ
て表わされている。アドレス表において、各文字のアド
レス情報は、各文字に対応する出現頻度データの小さい
順に配列されている。出現頻度データが“2”以上の場
合、その文字のアドレス情報は小さい順に配列されてい
る。文字“I”は文書ファイル内で4番目の位置と13
番目の位置に出現する。従って、アドレス表には、アド
レス情報“4”(バイト),“13”(バイト)が記録
されている。この場合、アドレス情報“13”が“4”
の次に配置されている。アドレス表には、各文字コード
に対応した次文字コードが記録されている。次文字コー
ドは文書ファイル内の各文字の次に配置される文字を表
わしている。例えば、文字“O”は文書ファイルの16
番目に位置する文字“B”の次に配置されている。従っ
て、アドレス表には、文字コード“O”が文字コード
“B”に対応した次文字コードとして記録されている。
【0022】一般には、“平仮名”は検索キーとしてあ
まり使われない。従って、“平仮名”が文書ファイルに
含まれる場合、“平仮名”に対するアドレス情報及び次
文字コードは出現頻度表及びアドレス表から除くことが
できる。
【0023】検索処理は図4,5,6に示すフローチャ
ートに従って行なわれる。
【0024】図4において、ステップ1でキーボード1
2から検索キーが入力された後に、CPU10は、ステ
ップ2において、検索キー内の文字数が1であるか否か
を判断する。検索キーが図2(b)に示すように複数の
文字を含む場合、第一の検索処理100が行なわれる。
一方、検索キーが1文字のみを含む場合、第二の検索処
理200が行なわれる。
【0025】第一の検索処理100は、図5に示すフロ
ーチャートに従って行なわれる。図5において、ステッ
プ101で、出現頻度表が参照され、検索キーの最終文
字を除く文字の内から最小頻度データの文字が選択され
る。図2(b)に示す検索キー“FUJ”の場合、文字
“F”の出現頻度データ“2”は文字“U”の出現頻度
データ“3”より小さいので、文字“F”が選択され
る。そして、各文字の出現頻度データfnが出現頻度表
の先頭文字から上記選択された文字の直前の文字まで順
次加算され、出現頻度データfnの総和Fがステップ1
02で演算される。アドレス表には、文字のアドレス情
報が対応する出現頻度データの小さい順に配列されてい
る。従って、出現頻度データfnの総和Fは選択された
文字のアドレス情報が記録されるアドレス表内での位置
に対応する。その後、選択された出現頻度データが、ス
テップ103で、カウンタに設定される。図2(b)に
示す検索キーの場合、文字“F”の出現頻度データ
“2”がカウンタにセットされる。
【0026】ステップ104で、選択された文字のアド
レス情報がアドレス表内で記録される位置Pが次の式に
従って演算される。
【0027】P=L×F 上式において、Lは1つのアドレス情報を表わすために
用いられるバイト数であり、Fはステップ102で演算
された出現頻度データの総和である。そして、ステップ
105で、CPU100はステップ104で求められた
アドレス表内の位置Pからアドレス情報と対応する次文
字コードを読み出す。図2(b)に示す検索キー“FU
J”の場合、アドレス情報“1”及び次文字コード
“U”がアドレス表から読み出される。そして、ステッ
プ106で、検索キーにおいて選択された文字の次の文
字がステップ105でアドレス表から読み出された次文
字コードによって特定される文字と等しいか否かが判断
される。検索キーにおいて選択された文字の次の文字が
次文字コードによって特定される文字と等しい場合、C
PU10は、文書ファイルの所定領域内の文字をサーチ
する。この所定領域は、アドレス表から読み出したアド
レス情報によって特定される位置を含む。そして、ステ
ップ107で、更に検索キーの文字によって構成される
文字列が文書ファイルの該所定領域にあるか否かが判断
される。検索キーの文字列に等しい文字列が該所定領域
にあると、検索キーの文字列が文書ファイル内の該所定
領域にあったことを示す検索結果が得られる。この検索
結果が、ステップ108で、ディスプレイユニット16
に表示される。検索キー“FUJ”の場合、検索キーに
おいて選択された文字“F”の次の文字“U”は次文字
コード“U”で特定される文字と等しい。その結果、文
書ファイルの先頭に位置する文字列“FUJ”が検索結
果として得られる。
【0028】カウンタのカウント値がゼロに達していな
い場合(ステップ110)、選択された文字のアドレス
情報がアドレス表にて位置する次の位置P(n+1)が
次式に従って演算される。
【0029】P(n+1)=P(n)+L 上式においてP(n)は前の演算で得られた位置であ
る。次の位置が演算された後、ステップ105から11
0が再び順次実行される。図2(b)に示す検索キーの
場合、CPU10はアドレス表の次の位置からアドレス
情報“24”及び次文字コード“J”を読み出す。この
場合、検索キーにおいて選択された文字“F”の次の文
字“U”が次文字コードによって特定される文字“J”
と等しくないので、処理はステップ106からステップ
109に進む。更に、たとえ検索キーにおいて選択され
た文字の次の文字がアドレス表から読出した次文字コー
ドによって特定される文字に等しくても、アドレス情報
によって特定される位置を含む文書ファイル内の所定領
域に検索キーの文字列が無ければ、処理はステップ10
7からステップ109に進む。この後、カウンタのカウ
ント値がゼロに達すると、処理が完了する。
【0030】第二の検索処理200は図6に示すフロー
チャートに従って行なわれる。
【0031】キーボード12から入力される検索キーが
1文字しか含まない場合、CPU10は出現頻度表をサ
ーチし、ステップ201で、出現頻度表に検索キーの文
字があるか否かを判断する。以後、検索キーに等しい文
字を入力文字という。ステップ202で、CPU10は
出現頻度表内の入力文字の出現頻度データfnを検出す
る。そして、各文字の出現頻度データfnを、出現頻度
表の先頭文字から入力文字の直前の文字までを順次加算
し、ステップ203で出現頻度データfnの総和Fを演
算する。その後、ステップ204で、入力文字のアドレ
ス情報が記録された位置が、出現頻度データfnの総和
を用いて演算され、ステップ205で、入力文字に対応
した出現頻度データがカウンタにセットされ、そして、
ステップ206で、CPU10はアドレス情報をアドレ
ス表のステップ205で演算された位置から第一の検索
処理100と同じように読み出す。そして、ステップ2
07で、アドレス情報及び入力文字が検索結果としてデ
ィスプレイユニット16に表示される。ステップ207
の後、カウンタのカウント値が、ステップ208で、1
だけインクリメントされ、カウンタのカウント値がゼロ
に達したか否かが、ステップ209にて判断される。上
記ステップ206から209がカウンタのカウント値が
ゼロになるまで繰返される。その結果、入力文字の出現
頻度データの値と等しい数の検索結果がディスプレイユ
ニット16に表示される。
【0032】上記検索処理によれば、出現頻度表を参照
して検索キーの文字の中から最小出現頻度の文字が選択
され、検索キーにおいて選択された文字の次の文字がア
ドレス表内の次文字コードによって特定される文字に等
しいか否かが判定される。そして、検索キーに等しい文
字列がアドレス表内の次文字コード及びアドレス情報に
関する判定結果を用いて文書ファイルから検索される。
従って、アドレス表の少ない参照回数により文字列が文
書ファイルから検索することが可能となる。即ち、検索
時間を短縮することが可能となる。なお、最小出現頻度
の文字の頻度データがゼロの場合は、対応する文字は文
書ファイル内に存在しない。従って、この場合、処理を
終了させることができる。
【0033】また、アドレス表は、文書ファイル内での
各文字の位置を特定するアドレス情報及び文書ファイル
内の各文字の次の文字を特定する次文字コードのみによ
って形成される。従って、アドレス表が容易に短時間で
作成され得る。文書ファイルから文字列を検索するため
に通常使用されない文字に対応したアドレス情報、次文
字コード及び出現頻度データはアドレス表及び出現頻度
表から省略することができる。従って、文書ファイルか
ら文字列を検索するために用いられるインデックス内の
情報量を減らすことが可能である。
【0034】図7に示すような出現頻度表及びアドレス
表を文字列の検索に使用することも可能である。
【0035】図7に示すアドレス表の構造は図3に示す
アドレス表と同じであり、図7に示す出現頻度表には、
文書ファイル内の各文字の文字コード、各文字コードに
対応した出現頻度データ及び各文字コードに対応した位
置データが記録されている。位置データは、アドレス表
内において同じ文字に対応するアドレス情報の位置のう
ちで開始の位置を示す。出現頻度表に、文字“F”に対
応した位置データ“5”及び出現頻度データ“2”が載
っている。即ち、文字“F”に対応したアドレス情報
“1”及び“24”がアドレス表内の位置データ“5”
によって特定される開始位置の5番目の位置と6番目の
位置に夫々記録されている。
【0036】第一の検索処理100は、図7に示す出現
頻度表及びアドレス表を参照して、図8に示すフローチ
ャートに従って行なうことも可能である。図8におい
て、図5に示すステップ同じステップには同一の参照番
号が付されている。
【0037】ステップ101にて得られた選択文字のア
ドレス情報が記録されるアドレス表内での位置に対応す
る出現頻度データfnの総和Fを演算するための図5に
示したステップ102は図8に示す処理から除かれてい
る。ステップ103とステップ105との間にステップ
112が図5に示すステップ104に代えて設けられて
いる。即ち、選択された文字に対応する出現頻度データ
がカウンタにセットされた後に、CPU10は、ステッ
プ112で、選択された文字に対応した位置データを出
現頻度表から読み出す。そして、ステップ105で、C
PU10はステップ112で得られた位置データによっ
て特定されるアドレス表内の位置からアドレス情報を読
み出す。他のステップは図5に示すものと同様である。
【0038】図7に示すような出現頻度表及びアドレス
表を参照して行なわれる上記第一の検索処理によれば、
各文字に対する位置データが出現頻度表に記録されてい
るので、選択された文字の位置に対応する出現頻度デー
タfnの総和Fを演算する必要がない。従って、文字例
が高速にて検索することができる。
【0039】図9に示すアドレス表を参照して文書ファ
イルから文字列を検索することができる。この場合、図
5,7に示すような出現頻度表は必要ない。
【0040】文書ファイルに出現しやすい各文字のアド
レス表があらかじめ図9に示すように作成される。各ア
ドレス表には、アドレス情報及び文書ファイルに含まれ
る各文字に対応した次文字コードが記録されている。ア
ドレス情報は対応する文字の文書ファイル内での位置を
特定する。次文字コードは、文書ファイル内の各文字の
次に配置される2文字を特定する。例えば、文字“A”
は図2(a)に示す文書ファイルの8番目、15番目及
び19番目に位置する。従って、文字“A”に対するア
ドレス表には、この文字“A”に対応したアドレス情報
“8”,“15”及び“19”が記録されている。ま
た、文字“TS”が8番目の位置にある文字“A”の次
に配置され、文字“BO”が15番目の位置にある文字
“A”の次に配置され、文字“TO”が19番目の位置
にある文字“A”の次に配置される。従って、文字
“A”に対するアドレス表には、アドレス情報“8”,
“15”及び“19”に対応した次文字コード“T
S”,“BO”及び“TO”が記録されている。各アド
レス表における最後のアドレス情報及び次文字コードは
“null”で表わされる。文書ファイルに含まれない
文字に対する各アドレス表内のアドレス情報及び次文字
コードは“null”で表わされる。更に、文書ファイ
ルの最後端に位置する文字の次文字コードもまた“nu
ll”で表わされる。第一の検索処理100は、図9に
示すアドレス表を参照して図10に示すフローチャート
に従って行なわれる。
【0041】図10において、ステップ120で、CP
U10は、キーボード12から入力された検索キーの先
頭に位置する先頭文字を検索キーの文字から抽出する。
ステップ121で、CPU10は、読取り位置をステッ
プ120で抽出された先頭文字のアドレス表の先頭に読
出し位置をセットする。ステップ122で、アドレス情
報及び次文字コードがステップ121にてセットされた
先頭文字に対するアドレス表の読取り位置から読み出さ
れる。その後、ステップ123で、アドレス情報と次文
字コードが“null”であるか否かが判断される。ア
ドレス情報と次文字コードが“null”の場合、処理
は終了する。一方、アドレス情報と次文字コードが“n
ull”でない場合、ステップ124で、更に、検索キ
ーにおける先頭文字の次に配置される2文字が次文字コ
ードで特定される文字に等しいか否かが判断される。検
索キーにおける先頭文字の次に配置される2文字が次文
字コードで特定される文字に等しい場合、検索キーに対
応する文字列が文書ファイルから検索されたことを示す
検索結果が得られる。その結果、ステップ125で、検
索結果(アドレス情報で特定される位置を含む)がディ
スプレイユニット16に表示される。この後、先頭文字
のアドレス表において、次のアドレス情報が記録される
位置P(n+1)が次式に従って演算される。
【0042】P(n+1)=P(n)+L 上式において、Pnはアドレス情報が前回読出された位
置を示し、Lは1アドレス情報を記述するために必要な
バイト数に対応する。次の位置P(n+1)が演算され
た後に、処理はステップ122に戻る。そして、ステッ
プ122〜126が再び行なわれる。検索キーにおける
先頭文字の次の2文字がアドレス表の次の位置P(n+
1)にある次文字コードによって特定される文字と等し
くない場合、検索結果はディスプレイユニット16に表
示されず、処理はステップ126に進む。この後、上記
処理が繰返される。
【0043】図2(a)に示す文書ファイルが選ばれ、
図2(b)に示す検索キー“FUJ”がキーボード12
から入力された場合、検索キー“FUJ”の文字から先
頭文字“F”が抽出される。検索キーにおける先頭文字
“F”の次に配置される“U”及び“J”は先頭文字
“F”に対するアドレス表の先頭位置における次文字コ
ードによって特定される文字と等しい。従って、アドレ
スデータ“1”によって特定される位置に位置する先頭
文字“F”を有する検索キーに対応した文字列が文書フ
ァイルから検索される。一方、検索キーにおける先頭文
字“F”の次に配置される“U”及び“J”が先頭文字
“F”に対するアドレス表の2番目に位置する次文字コ
ード“J”,“null”に等しくならない。従って、
この場合、文書ファイル内に検索キーに対応する文字列
があることを示す検索結果は得られない。
【0044】上記検索処理によれば、検索キーに対応す
る文字列が常に検索キーの先頭文字に基づいて検索され
るので、検索キーに対応した文字列が図3,7で示すよ
うな出現頻度表を使用することなく文書ファイルから検
索することができる。
【0045】出現頻度表を使用することなく文書ファイ
ルから文字列を検索するために図11に示すような複数
の文字に対するアドレス表を使用することも可能であ
る。
【0046】図11に示される各アドレス表には、アド
レス情報に対応する1つの次文字コードのみが記録され
ている例えば、文字“A”に対するアドレス表には、ア
ドレス情報“8”に対応した1つの次文字コード“T”
が記録されている。
【0047】第一の検索処理100は、図11に示すア
ドレス表を参照して図12に示すフローチャートに従っ
て行なわれる。図12において、図10に示す同じステ
ップには同一の符号が付されている。
【0048】図12において、アドレス情報に対応する
1つの次文字コードのみが記録されるアドレス表を参照
して正確に文書ファイルから文字列を検索するために、
ステップ124とステップ125の間にステップ127
とステップ128が加えられた。即ち、検索キーにおけ
る先頭文字の次の文字が次文字コードによって特定され
る文字に等しいと判断された場合、CPU10は、ステ
ップ127で、文書ファイルの判定領域から文字を読み
出す。この所定領域は、ステップ122で読出されたア
ドレス情報によって特定される位置を含む。そして、ス
テップ128で、更に検索キーの文字によって構成され
る文字列が文書ファイル内の該所定領域にあるか否かが
判断される。文書ファイル内の該所定領域に検索キーに
対応する文字列がある場合、検索キーに対応した文字列
が文書ファイルの該所定領域に存在することを示す検索
結果が得られる。そして、この検索結果は、ステップ1
25で、ディスプレイユニット126に表示される。
【0049】次に、図13(b)に示すような検索キー
に対応した文字列を図13(a)に示すような文書ファ
イル内の文字から検索する場合について説明する。
【0050】文書ファイルから文字列を検索するために
用いられるインデックスは、図14に示すような先頭位
置情報表及びアドレス情報表を含む。先頭位置情報表に
は、文書ファイル内の文字を示す各文字コードに対応し
た先頭位置情報が記録されている。先頭位置情報は、各
文字の情報がアドレス情報表において最初に記録された
位置を示している。アドレス情報表には、先頭位置情報
表に載られた文字に対応する各次文字コードが記録れて
いる。次文字コードは文書ファイル内の各文字の次の文
字を表わしている。即ち、例えば、次文字コード“り”
は文字“と”に対応し、両次文字コード“は”及び
“わ”は文字“に”に対応している。文字“が”は図1
3(a)に示す文書ファイルの最後端に位置するので、
文字“が”に対応する次文字コードは“null”によ
って表わされる。文書ファイル内の文字は各次文字コー
ドによって分類される。即ち、各次文字コードに分類さ
れた文字は文書ファイルにおいて、各次文字コードによ
って特定される文字の直前に位置する。アドレス情報表
には、個数データと位置データ(アドレス情報)が記録
されている。個数データは、先頭位置情報表内の文字コ
ードによって特定される文字と、アドレス情報表内の対
応する次文字コードによって特定される文字からなる文
字列の文書ファイル内での出現回数を示している。位置
データは、各次文字コードに分類された文字の文書ファ
イル内での出現位置を示している。例えば、3文字
“に”が次文字コード“わ”に分類され、この3文字
“に”は図13(a)に示す文書ファイルにおける位置
“0”,“4”及び“6”に位置する。即ち、文字列
“にわ”が図13(a)に示す文書ファイルに3回出現
する。
【0051】第一の検索処理が、図14に示す先頭位置
情報表及びアドレス情報表を参照して、図15に示すフ
ローチャートに従って行なわれる。
【0052】図15において、ステップ131では、C
PU10が検索キーの文字のなかからその先頭に位置す
る先頭文字を抽出する。ステップ132では、CPU1
0は、先頭位置情報表を参照して、ステップ131で抽
出された先頭文字に対応する先頭位置を得る。先頭文字
に対応し、先頭位置を含む位置に記録された一又は複数
の次文字コードがサーチされる。ステップ133では、
アドレス情報表を参照して、検索キーにおける先頭文字
の次の文字が先頭文字に対応した次文字コードによって
特定される文字と等しいか否かを判定する。ステップ1
33で得られる結果がYESの場合、ステップ134に
はカウンタがゼロにリセットされる(C=0)。この
後、ステップ135において、CPU10がカウンタの
カウント値によって特定される位置データをアドレス情
報テーブルから読み出す。そして、CPU10は、ステ
ップ136で、ステップ135で読み出した位置データ
によって特定される位置を含む文書ファイル内の所定領
域の文字を読み出す。ステップ137で、検索キーの文
字にて構成される文字列がステップ136で読み出した
文字のなかにあるか否かが判断される。検索キーに対応
した文字列が該所定領域の文字のなかにある場合には、
ステップ138で、検索結果がディスプレイユニット1
6に表示される。そして、ステップ139で、カウンタ
が1だけインクリメントされ、ステップ140で、カウ
ンタのカウント値がその次文字コードに分類された個数
データによって特定される数に達するか否かを判定す
る。そのカウント値が個数データによって特定される数
に達していなければ、上記処理が繰返される。
【0053】ディスプレイユニット16に表示される検
索結果には、例えば、検索キーに対応した文字列及びそ
の文字列の文書ファイル内での位置が含まれる。
【0054】一方、検索キーの先頭文字の次の文字と次
文字コードにて特定される文字とが一致しないとき、処
理は終了する。また、検索キーに対応した文字列が文書
ファイルの該所定領域に無い場合には、検索結果は表示
されない。
【0055】上記検索処理において、図13に示す検索
キー“にわに”がキーボード12から入力されると、先
頭文字として文字“に”が選択される。文字“に”に対
応する先頭位置情報“2”が先頭位置情報表から得られ
る。先頭文字“に”に対応した次文字コード“は”及び
“わ”が夫々アドレス情報表の先頭位置“2”と次の位
置“3”に記録されている。検索キーにおいて文字
“わ”は文字“に”の次に配置されているので、次文字
コード“わ”に対応する位置データ“0”,“4”及び
“6”がアドレス情報表から選択される。選択された位
置“0”の文字“に”について、文字列“にわに”が文
書ファイルの連続する位置“0”,“1”,“2”に配
列されている。また、選択された位置“4”の文字につ
いて、文字列“にわに”が文書ファイルの連続する位置
“4”,“5”,“6”に配列されている。しかし、選
択された位置“6”の文字“に”について、検索キーの
文字列“にわに”に一致しない文字列“にわと”が連続
する位置“6”,“7”,“8”に配列される。従っ
て、この場合、連続した位置“0”,“1”,“2”,
と“4”,“5”,“6”に位置する2つの文字列“に
わに”が文書ファイルから検索される。
【0056】上記検索処理によれば、文書ファイル内の
文字の位置を示す位置データが次文字コードによって分
類される。従って、アドレス情報表を小さくすることが
できる。
【0057】図16に示すような先頭位置情報表及びア
ドレス情報表もまた文書ファイルから文字列を検索する
ために使い得る。
【0058】図16に示すアドレス情報表は図14に示
すものと同じ構造となっている。図16に示す先頭位置
情報表には各文字コードに対応した出現頻度データが記
録されている。出現頻度データは対応する文字が文書フ
ァイル内で出現する頻度を示している。例えば、文字コ
ード“に”及び“わ”に夫々対応する出現頻度データ
“4”及び“3”が先頭位置情報表に記録されている。
【0059】第一の検索処理が、図16に示す先頭位置
情報表及びアドレス情報表を参照して、図17に示すよ
うなフローチャートに従って行なわれ得る。図17にお
いて、図15に示されるステップと同じステップには同
一の参照番号が付されている。
【0060】図17に示す処理において、先頭位置情報
表を参照して、検索キーの文字のなかから最小出現頻度
の文字が、ステップ141で選択される。そして、ステ
ップ142で、その最小出現頻度データがゼロであるか
否かが判断される。最小出現頻度データがゼロでない場
合、図15に示す処理と同様の手順に従って処理が実行
される。一方、最小出現頻度データがゼロである場合
は、対応する文字は文書ファイル内に存在しない。従っ
て、この場合、処理は終了する。
【0061】検索キーが“にわに”の場合、最小頻度デ
ータとなる文字として文字“わ”が選択される。従っ
て、次文字コード“に”に対応した位置データ“1”及
び“5”が選択される。即ち、2つの位置データに関す
る検索処理がステップ135〜140に従って行なわれ
る。
【0062】上記検索処理によれば、検索キーの文字列
が最小出現頻度データに対応した文字に基づいて検索さ
れる。従って、アドレス情報表及び文書ファイルの参照
回数を減らすことが可能となる。即ち、検索速度を改善
することができる。
【0063】第一の検索処理100は図18に示すフロ
ーチャートに従っても行ない得る。図18において、図
15に示すステップと同じステップには同一の参照番号
が付されている。
【0064】図18に示す処理は、図14及び図16に
示すような先頭位置情報表及びアドレス情報表を参照し
て行なわれる。図18において、ステップ143で次の
ような処理が行なわれる。検索キーの最後端に位置する
文字を除いて、検索キーの他のすべての文字に対する先
頭位置データが、先頭位置情報表を参照して、得られ
る。検索キーの文字に対応した次文字コードが先頭位置
データに基づいてアドレス情報表から検索される。検索
キーにおいて対応する文字の次に実際に位置する文字を
特定する次文字コードが選択される。最小個数データに
対応した次文字コードが選択された次文字コードから更
に選ばれる。検索キー“にわに”がキーボード12から
入力される場合、文字“わ”に対応する次文字コード
“に”が最小個数データ“2”に対応した次文字コード
として選ばれる。この後、ステップ144で、最小個数
データがゼロであるか否かが判定される。最小個数デー
タがゼロの場合、処理は終了する。一方、最小個数デー
タがゼロでない場合、例えば“2”の場合、処理は図1
5に示すステップ134−140と同じステップに従っ
て実行される。
【0065】上記検索処理によれば、検索キーの文字列
が文書ファイル内において最も出現回数の少ない2文字
構成の文字列に基づいて検索される従って、アドレス情
報表及び文書ファイルの参照回数を減らすことができ
る。即ち、検索速度を改善することが可能となる。
【0066】図1に示すシステムにおいて、出現頻度デ
ータ、位置データ(アドレス情報)、次文字コードを含
むインデックスは次のように自動的に作成される。
【0067】文書ファイル内の各文字に対する出現頻度
データを示す出現頻度表は、図19に示す処理に従って
作成される。
【0068】図19において、ステップ301では、C
PU10はメモリ11の出現頻度表格納領域を初期化す
る。オペレータがアドレスカウンタの初期値i0 と最大
値i max を入力すると、ステップ302で、その初期値
0 がアドレスカウンタにセットされ、その最大値i
max がレジスタにセットされる。初期値i0 は文書ファ
イルの検索領域の先頭に対応する。最大値imax は文書
ファイルの検索領域の最終端に対応する。初期値i0
最大値imax がそれぞれ“0”と文書ファイルの最終端
である場合は、文書ファイル全体が検索される。
【0069】そして、ステップ303で、アドレスカウ
ンタが1だけインクリメントされる。ステップ304
で、CPU10はアドレスカウンタのカウント値iで特
定されるi番目の位置にある文字コードCj を読み出
す。その後、ステップ305で、文字コードCj がすで
に出現頻度格納領域に記録されているか否かを判定す
る。この文字コードCj がすでに出現頻度格納領域に記
録されている場合、ステップ306で、文字コードCj
の出現頻度データfj が1だけインクリメントされる。
一方、文字コードCj がまだ出現頻度格納領域に記録さ
れていない場合には、ステップ307で、文字コードC
j が出現頻度格納領域に加えられると共に、文字コード
j の出現頻度データfj が“1”にセットされる(f
j =1)。その後、ステップ308にて、アドレスカウ
ンタのカウント値iが最大値imax に達したかどうかを
判断する。アドレスカウンタのカウント値iがまだ最大
値imaxに達していない場合、アドレスカウンタは、ス
テップ303にて1だけインクリメントされ、上記処理
が繰返される。一方、検索領域のすべての文字が読み出
されてしまうと、アドレスカウンタのカウント値が最大
値imax に達する。このとき、処理はステップ309に
進む。ステップ309では、ソート処理が行なわれる。
このソート処理により、出現頻度格納領域に記録された
文字コードと対応する出現頻度データは所定の順番にソ
ートされる。文字コードと出現頻度データは、例えば、
図3に示すように出現頻度データの小さい順に配列され
る。
【0070】位置データ(アドレス情報)と次文字コー
ドを含むアドレス情報表は図20に示す処理に従って作
成される。
【0071】図20において、ステップ401では、C
PU10がメモリ11のアドレス表格納領域を初期化す
る。オペレータがアドレス情報表において載せるべき各
文字に対応した次文字コードの数(n)を入力すると、
ステップ402で、CPU10はその数(n)をレジス
タにセットする。そして、ステップ403で、図19に
示すステップ302と同様に初期値i0 がアドレスカウ
ンタにセットされると共に、最大値imax がレジスタに
セットされる。
【0072】初期値i0 がアドレスカウンタにセットさ
れた後に、ステップ404でアドレスカウンタは1だけ
インクリメントされる。ステップ405で、CPU10
はアドレスカウンタのカウント値iで特定されるi番目
の位置にある文字コードCjを読み出す。その後、ステ
ップ406で、CPU10は(i+1)番目,(i+
2)番目,…,(i+n)番目に位置する文字を特定す
るn個の次文字コードを検索する。n個の次文字コード
が検索された後に、CPU10はステップ407で、文
字コードCj がすでにアドレス情報表格納領域に記録さ
れているか否かを判定する。その文字コードCj がまだ
アドレス情報表格納領域にまだ記録されていない場合、
文字コードCj が、ステップ408で、アドレス情報表
格納領域に加えられる。ステップ407又は408の
後、CPU10はアドレスカウンタのカウント値iに対
応する位置データ(アドレス情報)及びn個の次文字コ
ードが文字コードCj に対応するようにアドレス情報表
格納領域に記録される。これの後、ステップ410で、
アドレスカウンタのカウント値が最大値imax に達した
か否かを判定する。アドレスカウンタのカウント値iが
まだ最大値imax に達していない場合、ステップ404
で、アドレスカウンタが1だけインクリメントされる。
一方、アドレスカウンタのカウント値iが最大値imax
に達すると、処理はステップ411に進む。ステップ4
11で、図19のステップ309と同様にソート処理か
行なわれる。ステップ411でのソート処理により、ア
ドレス情報表格納領域に記録された位置データ(アドレ
ス情報)及び対応する次文字コードが所定の順番にソー
トされる。位置データと対応する次文字コードは、例え
ば、図3に示す出現頻度表内の出現頻度データと同じ順
番に配列される。
【0073】出現頻度表は図21に示すような処理に従
っても作成することができる。図21において、図19
と同一のステップには同一の参照番号が付されている。
図21に示す処理により、検索処理に実際に必要な文字
に対応した出現頻度データのみが出現頻度表格納領域に
記録される。
【0074】図21において、図19のステップ30
4,305の間にステップ310が加えられる。ステッ
プ310において、CPU10はオペレータが予め入力
した情報に基づいて文字コードCj が検索処理に必要か
否かを判定する。文字コードC j が検索処理に必要ない
場合は、処理はステップ303に戻る。即ち、その文字
コードCj は出現頻度表格納領域に記録されない。
【0075】“平仮名”は出現頻度表から除くという情
報がこのシステムに入力されれば、“平仮名”に対する
出現頻度データはメモリ11内の出現頻度表格納領域に
記録されない。
【0076】アドレス情報表は図22に示すような処理
に従って作成することも可能である。図22において、
図20と同一のステップには同一の参照番号が付されて
いる。図22に示す処理により、検索処理に実際に必要
な文字に対応した位置データ(アドレス情報)及び次文
字コードのみがアドレス情報表格納領域に記録される。
【0077】図22において、図20に示すステップ4
05,406の間にステップ412が加えられる。ステ
ップ412において、文字コードCj が検索処理に必要
か否かが図21のステップ310と同様に判定される。
【0078】図3,7,14,16に示すアドレス情報
表において、図9に示すアドレス情報表と同様に複数文
字の次文字コードを記録するようにしても良い。
【0079】本発明は上記実施例に限定されることな
く、発明の範囲において任意の変形が可能である。
【0080】
【発明の効果】本発明によれば、検索キーに対応した文
字列がインデックスに記録された次文字コード及び各文
字の位置データに基づいて検索されるので、容易に該当
する文字列が文書ファイル内の文字から検索できる。ま
た、位置データ及び次文字コードは文書ファイルをサー
チすることで容易に得ることができる。従ってインデッ
クスも容易に作成できる。更に位置データ及び次文字コ
ードはどんな文書ファイルからも得ることができるの
で、汎用性の高い文字列検索システムが実現できる。
【0081】更にまた、インデックスの構成が簡単なの
で、このインデックスを作成する装置が容易に実現でき
る。
【図面の簡単な説明】
【図1】本発明に係る文字列検索システムが構築される
コンピュータシステムを示すブロック図である。
【図2】文書ファイル及び検索キーに対応する文字列の
一例を示す図である。
【図3】文字列検索システムに用いられるインデックス
の第一の実施例を示す図である。
【図4】第一の検索処理と第二の検索処理のいずれかを
行なうかの判断を行なう処理を示すフローチャートであ
る。
【図5】第一の検索処理の第一の実施例を示すフローチ
ャートである。
【図6】第二の検索処理の実施例を示すフローチャート
である。
【図7】文字列検索システムに用いられるインデックス
の第二の実施例を示す図である。
【図8】第一の検索処理の第二の実施例を示すフローチ
ャートである。
【図9】文字列検索システムに用いられるインデックス
の第三の実施例を示す図である。
【図10】第一の検索処理の第三の実施例を示すフロー
チャートである。
【図11】文字列検索システムに用いられるインデック
スの第四実施例を示す図である。
【図12】第一の検索処理の第四の実施例を示すフロー
チャートである。
【図13】文書ファイル及び検索キーに対応した文字列
の他の例を示す図である。
【図14】文字列検索システムに用いられるインデック
スの第五の実施例を示す図である。
【図15】第一の検索処理の第五の実施例を示すフロー
チャートである。
【図16】文字列検索システムに用いられるインデック
スの第六の実施例を示す図である。
【図17】第一の検索処理の第六の実施例を示すフロー
チャートである。
【図18】第一の検索処理の第七の実施例を示すフロー
チャートである。
【図19】文字列検索システムに用いられるインデック
スを作成するための処理の第一の実施例を示すフローチ
ャートである。
【図20】文字列検索システムに用いられるインデック
スを作成するための処理の第二の実施例を示すフローチ
ャートである。
【図21】文字列検索システムに用いられるインデック
スを作成するための処理の第三の実施例を示すフローチ
ャートである。
【図22】文字列検索システムに用いられるインデック
スを作成するための処理の第四の実施例を示すフローチ
ャートである。
【符号の説明】
10 CPU 11 メモリ 12 キーボード 13 キーボード制御回路 14 光ディスクユニット 15 外部記憶装置制御回路 16 ディスプレイユニット 17 ディスプレイ制御回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 古村 聡 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 坪倉 孝 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 伊丹 敏 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 鈴木 浩 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 宮部 恭子 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】 複数の文字を含む文書ファイルから検索
    キーに対応した文字列を検索する文字列検索システムで
    あって、 文書ファイル内の各文字の位置を特定するための位置デ
    ータと文書ファイル内の各文字の次に配置される文字又
    は文字列を特定するための次文字データとを示すインデ
    ックスと、 検索キーに対応した文字列を構成する文字から第一の文
    字を選択する選択手段と、 検索キーにおいて、上記選択手段にて選択された第一の
    文字の次に配置された文字又は文字列が第一の文字に対
    応した次文字データによって特定される文字又は文字列
    に等しいか否かをインデックスを参照して判定する判定
    手段と、 該判定手段が、検索キーにおける第一の文字の次の文字
    又は文字列が第一の文字に対応した次文字データによっ
    て特定される文字又は文字列に等しいと判定したとき
    に、インデックス内の第一の文字に対応した位置データ
    に基づいて得られる検索結果を出力する出力手段とを有
    することを特徴とする文字列検索システム。
  2. 【請求項2】 複数の文字を含む文書ファイルから検索
    キーに対応した文字列を検索する文字列検索システムで
    あって、 文書ファイル内の各文字の位置を特定するための位置デ
    ータと文書ファイル内の各文字の次に配置される文字又
    は文字列を特定するための次文字データとを示すインデ
    ックスと、 検索キーに対応した文字列を構成する文字から第一の文
    字を選択する選択手段と、 検索キーにおいて上記選択手段にて選択された第一の文
    字の次に配置された文字又は文字列が第一の文字に対応
    した次文字データによって特定される文字又は文字列に
    等しいか否かをインデックスを参照して判定する第一の
    判定手段と、 第一の文字に対応した位置データによって特定される位
    置を含む文書ファイル内の所定領域に検索キーの文字に
    よって構成された文字列があるか否かを判定する第二の
    判定手段と、 該第二の判定手段が、その文字列が文書ファイル内の該
    所定領域にあると判定したときに、インデックス内の第
    一の文字に対応した位置データに基づいて得られる検索
    結果を出力する出力手段とを有することを特徴とする文
    字列検索システム。
  3. 【請求項3】 請求項1又は2記載の文字列検索システ
    ムにおいて、 選択手段によって選択される第一の文字は、検索キーの
    先頭に位置することを特徴とする文字列検索システム。
  4. 【請求項4】 請求項1又は2記載の文字列検索システ
    ムにおいて、 選択手段は、文書ファイル内で各文字が出現する頻度を
    示す頻度データが記録された頻度テーブルを有し、該選
    択手段が頻度テーブルを参照して最小頻度データに対応
    する文字を第一の文字として選択するようにしたことを
    特徴とする文字列検索システム。
  5. 【請求項5】 請求項4記載の文字列検索システムにお
    いて、 頻度データが頻度テーブルにおいて所定の順番で配列さ
    れ、インデックスにおける位置データと次文字データが
    夫々頻度データに対応した順番で配列されたことを特徴
    とする文字列検索システム。
  6. 【請求項6】 請求項5記載の文字列検索システムにお
    いて、 頻度データが頻度テーブル内において小さい順に配列さ
    れたことを特徴とする文字列検索システム。
  7. 【請求項7】 請求項4記載の文字列検索システムにお
    いて、 頻度テーブルに、各文字の頻度データをインデックス内
    の位置データと次文字データに関連付ける情報が与えら
    れ、上記判定手段がその情報を用いてインデックス内の
    第一の文字に対応する位置データと次文字データを捜す
    ようにしたことを特徴とする文字列検索システム。
  8. 【請求項8】 請求項1又は2記載の文字列検索システ
    ムにおいて、 各文字に対応した一又は複数の位置データとその位置デ
    ータの個数を示す個数データとがインデックス内におい
    て該各文字の次文字データの各項のもとに載せられるよ
    うにしたことを特徴とする文字列検索システム。
  9. 【請求項9】 請求項8記載の文字列検索システムにお
    いて、 インデックスは、文書ファイル内の文字を載せたテーブ
    ルを有し、このテーブルに載せられた各文字は次文字デ
    ータに関連付けられていることを特徴とする文字列検索
    システム。
  10. 【請求項10】 請求項9記載の文字列検索システムに
    おいて、 該テーブルには、各文字の文書ファイルに出現する頻度
    を示す頻度データが載せられ、該選択手段が該テーブル
    の頻度データを参照して最小頻度データに対応した文字
    を第一の文字として選択するようにしたことを特徴とす
    る文字列検索システム。
  11. 【請求項11】 請求項8記載の文字列検索システムに
    おいて、 選択手段は、インデックスを参照して、最小個数の位置
    データが載せられた次文字データに対応する文字を第一
    の文字として選択するようにしたことを特徴とする文字
    列検索システム。
  12. 【請求項12】 複数の文字を含む文書ファイルから検
    索キーに対応した文字列を検索する文字列検索システム
    にて使用され、文書ファイル内の各文字の位置を特定す
    る位置データと文書ファイル内の各文字の次に配置され
    る文字又は文字列を特定する次文字データとを示すイン
    デックスを作成する装置であって、 文書ファイル内の文字を一文字ずつ順次捜すサーチ手段
    と、 インデックス内において該サーチ手段によって捜された
    文字の次に配置される所定数の文字を検出する検出手段
    と、 サーチ手段によって捜された文字が文書ファイル内で位
    置する位置を特定する位置データと、検出手段によって
    検出された一又は複数の文字を特定する次文字データと
    を記録するリスト手段とを有し、 この位置データと次文字データとによりインデックスを
    形成するようにしたことを特徴とするインデックス作成
    装置。
  13. 【請求項13】 複数の文字を含む文書ファイルから検
    索キーに対応した文字列を検索する文字列検索システム
    において用いられ、各文字が文書ファイルに出現する頻
    度をあらわす頻度データを載せたインデックスを作成す
    る装置であって、 文書ファイル内の文字を1文字ずつ順次捜すサーチ手段
    と、 サーチ手段によって捜された各文字が文書ファイル内に
    出現する回数をカウントするカウント手段と、 該カウント手段にて得られたカウント値に対応した頻度
    データを記録するリスト手段とを有し、 この頻度データによってインデックスを形成するように
    したインデックス作成装置。
  14. 【請求項14】 請求項12又は13記載のインデック
    ス作成装置において、 該サーチ手段は、文書ファイル内に領域を設定する領域
    設定手段を有し、該サーチ手段は設定された領域内の文
    字を捜すようにしたこを特徴とするインデックス作成装
    置。
  15. 【請求項15】 請求項12記載のインデックス作成装
    置において、更に、該サーチ手段によって捜された文字
    に対応する位置データ及び次文字データが当該インデッ
    クスに必要か否かを判定する判定手段を備え、この判定
    手段によって必要とされた位置データ及び次文字データ
    がリスト手段により記録されるようにしたことを特徴と
    するインデックス作成装置。
  16. 【請求項16】 請求項13記載のインデックス作成装
    置において、更に、サーチ手段によって捜された文字に
    対応する頻度データが当該インデックスに必要か否かを
    判定する判定手段を備え、この判定手段によって必要と
    判定された頻度データがリスト手段により記録されるよ
    うにしたことを特徴とするインデックス作成装置。
JP5011171A 1992-01-27 1993-01-26 インデックスを用いた文字列検索システム及びそのインデックスの作成装置 Expired - Fee Related JPH07113926B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5011171A JPH07113926B2 (ja) 1992-01-27 1993-01-26 インデックスを用いた文字列検索システム及びそのインデックスの作成装置

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP1207492 1992-01-27
JP26007892 1992-09-29
JP4-260078 1992-09-29
JP4-12074 1992-09-29
JP5011171A JPH07113926B2 (ja) 1992-01-27 1993-01-26 インデックスを用いた文字列検索システム及びそのインデックスの作成装置

Publications (2)

Publication Number Publication Date
JPH06168270A true JPH06168270A (ja) 1994-06-14
JPH07113926B2 JPH07113926B2 (ja) 1995-12-06

Family

ID=27279308

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5011171A Expired - Fee Related JPH07113926B2 (ja) 1992-01-27 1993-01-26 インデックスを用いた文字列検索システム及びそのインデックスの作成装置

Country Status (1)

Country Link
JP (1) JPH07113926B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08314975A (ja) * 1995-05-22 1996-11-29 Matsushita Electric Ind Co Ltd 情報検索装置
US5857200A (en) * 1995-02-21 1999-01-05 Fujitsu Limited Data retrieving apparatus used in a multimedia system
JP2014137636A (ja) * 2013-01-15 2014-07-28 Ntt Docomo Inc 情報検索装置及び情報検索方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60166070A (ja) * 1984-02-09 1985-08-29 株式会社東芝 情報入力方式
JPS62221027A (ja) * 1986-03-20 1987-09-29 Fujitsu Ltd 単語分割装置における単語候補検索方式
JPH04241672A (ja) * 1991-01-14 1992-08-28 Nec Corp 文字列検索方式

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60166070A (ja) * 1984-02-09 1985-08-29 株式会社東芝 情報入力方式
JPS62221027A (ja) * 1986-03-20 1987-09-29 Fujitsu Ltd 単語分割装置における単語候補検索方式
JPH04241672A (ja) * 1991-01-14 1992-08-28 Nec Corp 文字列検索方式

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5857200A (en) * 1995-02-21 1999-01-05 Fujitsu Limited Data retrieving apparatus used in a multimedia system
JPH08314975A (ja) * 1995-05-22 1996-11-29 Matsushita Electric Ind Co Ltd 情報検索装置
JP2014137636A (ja) * 2013-01-15 2014-07-28 Ntt Docomo Inc 情報検索装置及び情報検索方法

Also Published As

Publication number Publication date
JPH07113926B2 (ja) 1995-12-06

Similar Documents

Publication Publication Date Title
US5357431A (en) Character string retrieval system using index and unit for making the index
US4775956A (en) Method and system for information storing and retrieval using word stems and derivative pattern codes representing familes of affixes
US4495566A (en) Method and means using digital data processing means for locating representations in a stored textual data base
US5895463A (en) Compression of grouped data
JPH09259140A (ja) 情報検索方法、情報検索装置及び情報検索プログラムを格納する媒体
JP2669601B2 (ja) 情報検索方法及びシステム
JPH08227426A (ja) データ検索装置
US5608625A (en) System and method for formatting position-sensitive data
CN114297143A (zh) 一种搜索文件的方法、显示文件的方法、装置及移动终端
JP2693914B2 (ja) 検索システム
JPH06168270A (ja) インデックスを用いた文字列検索システム及びそのインデックスの作成装置
JP3945075B2 (ja) 辞書機能を備えた電子装置及び情報検索処理プログラムを記憶した記憶媒体
JP2682448B2 (ja) 索引検索方式
JPH0991297A (ja) 文字列検索方法及び装置
JP3471666B2 (ja) 複数テーブルにわたるキーワード検索方法
JP2000076254A (ja) キーワード抽出装置、このキーワード抽出装置を用いた類似文献検索装置、キーワード抽出方法及び記録媒体
JPH07302347A (ja) グラフ生成装置
JPH07296005A (ja) 日本語テキスト登録・検索装置
JP3585944B2 (ja) データ処理方法及びその装置
JPH05257980A (ja) 文書検索装置
KR101057997B1 (ko) 최초 문자를 이용하는 검색 엔진 및 검색 방법
JPH05158984A (ja) 文字列抽出装置
JPH0623973B2 (ja) 文字処理装置の頻度変更方式
JP3298288B2 (ja) 文書入力装置
JPH04559A (ja) データ検索方式

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19960528

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071206

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081206

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091206

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091206

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101206

Year of fee payment: 15

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111206

Year of fee payment: 16

LAPS Cancellation because of no payment of annual fees