JPS6337425A - Dictionary data search device - Google Patents
Dictionary data search deviceInfo
- Publication number
- JPS6337425A JPS6337425A JP61179946A JP17994686A JPS6337425A JP S6337425 A JPS6337425 A JP S6337425A JP 61179946 A JP61179946 A JP 61179946A JP 17994686 A JP17994686 A JP 17994686A JP S6337425 A JPS6337425 A JP S6337425A
- Authority
- JP
- Japan
- Prior art keywords
- order
- index
- sub
- index file
- file
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、カナ漢字変換辞書、言語翻訳辞書などから与
えられたキーワードに応じた見出し語および対応するデ
ータ号検索する辞書データ検索装置に係り、特に、キー
ワード中に不定の文字がある場合の大容量特許データを
検索するのに好適な辞書データ検索装置に関する。[Detailed Description of the Invention] [Field of Industrial Application] The present invention relates to a dictionary data retrieval device that searches for headwords and corresponding data numbers according to keywords given from a kana-kanji conversion dictionary, language translation dictionary, etc. In particular, the present invention relates to a dictionary data search device suitable for searching large volumes of patent data when there are undefined characters in keywords.
従来から辞書データファイルご検索する装置としては、
例えば特開昭55−83962号、特開昭56−386
61号に記載されている装置がある。これらの装置は、
見出し語の1文字目もしくは2文字目までを第1次検索
対象として検索し、得られたアドレス情報より3文字目
以降が格納されている辞書本体を第2次検索する。Traditionally, devices for searching dictionary data files include:
For example, JP-A-55-83962, JP-A-56-386
There is a device described in No. 61. These devices are
The first or second character of the headword is searched as a primary search target, and the dictionary main body in which the third and subsequent characters are stored is secondly searched based on the address information obtained.
しかしながら、上記従来技術は、大容量辞書データファ
イルを接続した場合の辞書データ検索について配慮がな
されておらず、見出し語の2文字目までが一致しても、
3文字目以降が異なる大量の辞書データを検索するため
に、検索時間の増大2招くという問題があった。またキ
ーワード中に不定の文字がある場合の辞書データの検索
に関しては、何ら配慮がなされていないという問題もあ
った0
本発明の目的は、不定の文字な含んだキーワードに対し
て、該当する見出し語および該当するデータを、大容量
辞書データファイルの中から高速に検索でき、しかも上
記事項を小形および小容量のバッファメモリで実現でき
る辞書データ検索装置ご提供することにある。However, the above-mentioned conventional technology does not take into consideration dictionary data searches when a large-capacity dictionary data file is connected, and even if up to the second character of the entry word matches,
There is a problem in that searching a large amount of dictionary data in which the third and subsequent characters are different results in an increase in search time. There was also the problem that no consideration was given to searching dictionary data when there are indefinite characters in a keyword. An object of the present invention is to provide a dictionary data retrieval device that can quickly retrieve words and corresponding data from a large-capacity dictionary data file, and can also realize the above-mentioned items with a small and small-capacity buffer memory.
上記目的な達成するため、本発明は、大容量辞書データ
ファイルが格納されている記憶手段の物理的最少アクセ
ス単位であるセクタもしくは該セクタの整数倍を1ブロ
ツクとし、辞書データファイルの各ブロックの先頭の見
出し語のみご集めた正順のサブインデックスファイル、
正順のサブインデックスファイルの各ブロックの先頭見
出し語のみな集めた1ブロツクの正順のマスタインデッ
クスファイル、辞書データファイルの各見出し語文字列
の前後類を入れ換えた逆順見出し語とこの逆順見出し語
に対応する辞書データファイルのアドレスを示すポイン
タとが格納された逆順のポインタインデックスファイル
、逆順のポインタインデックスファイルの各ブロックの
先頭見出し語のみを集めた逆順のサブインデックスファ
イル、逆順のサブインデックスファイルの各ブロックの
先頭見出し語のみを集めた1ブロツクの逆順のマスタイ
ンデックスフアイル、企それぞれ作成して、不定の文字
を含むキーワードに対する大容量辞書データファイルを
検索できるようにした。To achieve the above object, the present invention defines a sector, which is the minimum physical access unit of a storage means in which a large-capacity dictionary data file is stored, or an integral multiple of the sector as one block, and each block of the dictionary data file. A sub-index file in normal order that collects only the first headword,
One block of forward-ordered master index file that collects only the first headword of each block of the forward-ordered sub-index file, a reverse-order headword with the front and back classes of each headword character string in the dictionary data file swapped, and this reverse-order headword. A pointer index file in reverse order that stores a pointer indicating the address of the dictionary data file corresponding to A master index file for one block in reverse order, which collects only the headwords at the beginning of each block, was created for each project, making it possible to search a large-capacity dictionary data file for keywords containing unspecified characters.
その際、必要とするバッファメモリ(バッファ領域)の
大きさは、1ブロツクである正順および逆順のマスタイ
ンデックスファイルを読み込む場合、1ブロツク、その
正順および逆順のマスタインデックスファイルより、正
順および逆順のサブインデックスファイルの該当ブロッ
ク(1プロッ4)を読み込む場合、1ブロツク、さらに
その正順のサブインデックスファイルにより、大容量辞
書データファイルの該当する見出し語の格納されている
ブロックご読み込む場合、1ブロツク、逆順のサブイン
デックスファイルにより逆順のポインタインデックスフ
ァイルの該当する見出り、 Hの格納されているブロッ
クご読み込む場合、1ブロツク、となり、1ブロツクの
大きさのバッファメモリを用意するだけで、大容量辞書
データファイル分検索することができる。At this time, the size of the buffer memory (buffer area) required is: When reading one block of forward and reverse order master index files, one block and its forward and reverse order master index files are read. When reading the corresponding block (1 plot 4) of the sub-index file in the reverse order, 1 block, and then when reading the block containing the corresponding headword of the large-capacity dictionary data file using the sub-index file in the forward order, If you read a block containing H, the corresponding heading of a pointer index file in reverse order using a sub-index file in reverse order, it will be one block, and you will only need to prepare a buffer memory of the size of one block. , it is possible to search large-capacity dictionary data files.
本発明の動作について、以下説明する。 The operation of the present invention will be explained below.
不定の文字を含んだキーワードに対する辞書データ検索
は、キーワードの先頭文字から不定の文字直前の文字列
Aと不定の文字直後からキーワードの最後尾までの文字
列Bに分離する。文字列Aについては、正順のインデッ
クスファイルご利用して検索し、文字列Bについては逆
順のインデックスファイルご利用して検索する。A dictionary data search for a keyword containing an indefinite character is separated into a character string A from the first character of the keyword to immediately before the indefinite character and a character string B from immediately after the indefinite character to the end of the keyword. Character string A is searched using a forward index file, and character string B is searched using a reverse index file.
文字列Aの検索は、以下の通りである。正順のマスタイ
ンデックスフアイルご読み出し、文字列Aが、正順のマ
スタインデックスフアイルの見出し語列のm番目と一致
もしくは、m番目と(ル+1)番目の間にあることを検
索(第1次)する。The search for character string A is as follows. Read the master index file in forward order, search for character string A to match the mth index word string in the master index file in forward order, or to find that it is between the mth and (+1)th (first )do.
次に、正順のサブインデックスファイルのm番目のブロ
ックご読み出す◇文字列Aが、読み出した正順のサブイ
ンデックスファイル(1ブロツク)の見出し語列のm番
目と一致もしくは、m#r目と(m+1)番目の間にあ
ることを検索(第2次)する0次に、正順のサブインデ
ックスファイルの各フロックごとに設定されている辞書
データファイルに対するオフセット値P2用いて、辞書
データファイルの(P十m )番目のブロックを読み出
す。読み出した辞書データファイルの見出し語と文字列
Aとを比較し、一致する見出し語を検索(第6次)する
。Next, read the m-th block of the sub-index file in normal order. ◇Character string A matches the m-th headword string of the read sub-index file (1 block) in normal order, or the character string A matches the m#r-th block. (m+1)-th search (second order) Next, use the offset value P2 for the dictionary data file that is set for each block of the sub-index file in forward order to Read the (P10m)th block. The headword of the read dictionary data file is compared with the character string A, and a matching headword is searched (sixth step).
文字列Bの検索は、以下の通りである。文字列Bの前後
順を入れ換えた文字列B′を作成する。この文字列B′
について、文字列Aを検索したのと同様な手法で逆順の
マスタインデックスフアイル。The search for character string B is as follows. A character string B' is created by changing the order of the character string B. This string B'
, the master index file in reverse order using the same method used to search for string A.
−逆、@のサブインデックスファイルを用いて、逆順の
ポインタインデックスファイルの該当ブロックを読み出
し、このポインタインデックスの見出し語と文字列B′
とを比較し、一致する見出し語を検索(第3次)する。- Reverse, using the @ sub-index file, read the corresponding block of the pointer index file in reverse order, and read the headword and character string B' of this pointer index.
and search for matching headwords (third stage).
そして、逆順のポインタインデックスファイルの文字列
B′で始まるすべての見出し語と、辞書データファイル
の文字列Aで始まるすべての見出し語との論理積な取る
。これにより求める見出し語が得られる。Then, the logical AND of all the headwords starting with the character string B' in the reverse pointer index file and all the headwords starting with the character string A in the dictionary data file is taken. This will give you the desired headword.
なお、上記以外の不定の文字を含んだキーワードに対す
る辞tlFデータ検索としては、上述したようにして、
逆順のボーrンタインデックスファイルから文字列B′
で始まる丁べての見出し語を検索した後、これら見出し
語列を、文字列Aの前後順を入れ換えた文字列A′によ
り再検索したり、また、上述したようにして読み出した
辞書データファイルの中から、文字列Aと一致する見出
し語を検索した後、これら見出し語列ご、文字列Bによ
り再検索したりするようにしても上記と同様の結果が得
られる。In addition, as described above, the tlF data search for keywords containing unspecified characters other than those mentioned above is as follows.
String B' from reverse borner index file
After searching for all the headwords starting with , these headword strings can be searched again using the character string A' with the order of the character string A switched, or the dictionary data file read out as described above. The same result as above can be obtained by searching for a headword that matches the character string A from among them, and then re-searching for each headword string using the character string B.
また−不定の文字が、キーワードの先頭にある場合は、
逆順のマスタインデックスフアイル、逆順のサブインデ
ックスファイルおよび逆順のポインタインデックスファ
イルを用い、不定の文字が、キーワードの最後尾にある
場合は、正順のマスタインデックスフアイルおよび正順
のサブインデックスファイルを用いて求める見出し語を
得るようにする。Also, if an unspecified character is at the beginning of a keyword,
Use a master index file in reverse order, a subindex file in reverse order, and a pointer index file in reverse order. If an indefinite character is at the end of a keyword, use a master index file in forward order and a subindex file in forward order. Try to get the headword you are looking for.
また、不定の文字を含まないキーワードに対する辞書デ
ータ検索に関しては、検索すべき文字列がどのようなも
のでも、正順のマスタインデックスフアイル、正順のサ
ブインデックスファイル。In addition, for dictionary data searches for keywords that do not contain irregular characters, no matter what character strings are to be searched, a master index file in normal order and a subindex file in normal order are required.
辞書データファイルを用いて目的とする見出し語を検索
することができ、この結果、高速に大容量辞書データフ
ァイルを検索Tることができる。A dictionary data file can be used to search for a target entry word, and as a result, a large capacity dictionary data file can be searched at high speed.
また、これらの検索の際に必要とするバッファメモリの
大きさは、マスタインデックスフアイル(1ブロツク)
、サブインデックスファイル(該当丁べき1ブロツク)
、辞書データファイル(該遍すべき1ブロツク)等を読
み出すのに各1ブロツク分必要であるが、その都度バッ
ファメモリの内容を書き換えて共通に使用することによ
り、1ブロツク分のみのバッファメモリサイズで充分で
ある。Also, the size of the buffer memory required for these searches is based on the master index file (1 block).
, sub-index file (one block per block)
, dictionary data file (one block that should be used), etc. each requires one block, but by rewriting the contents of the buffer memory each time and using it commonly, the buffer memory size can be reduced to only one block. is sufficient.
以下、本発明を図面を用いて説明する。第1図は本発明
の辞書データ検索装置一実施例を示すブロック図、第2
図は第1図の外部記憶袋!t14に格納された辞書の構
造を示す図である。Hereinafter, the present invention will be explained using the drawings. FIG. 1 is a block diagram showing an embodiment of the dictionary data retrieval device of the present invention, and FIG.
The figure is the external storage bag shown in Figure 1! It is a figure which shows the structure of the dictionary stored in t14.
辞書データ検索装置(以下、単に装置という)10は、
辞書検索に用いるキーワードを入力し、辞書検索の結果
得たデータを出力する入出力装置19と、第2図に示す
辞書1及びその他のデータを記憶する外部記憶装置(第
1の記憶装置)14と、CPU(中央処理装置)11の
発する指令に従って外部記憶装置14を制御する制御回
路12と、CPU11から直接読み書きされる内部メモ
リ(第2の記憶表f)13と、内部メモリ15のプログ
ラム領域15に格納されたプログラムに従い入出力装置
19および制御回路12を制御し、内部メモリ13のバ
ッファ領域17および作業領域16を用いて辞書検索を
遂行するC P Ullとから構成される。The dictionary data retrieval device (hereinafter simply referred to as device) 10 includes:
An input/output device 19 for inputting keywords used in a dictionary search and outputting data obtained as a result of the dictionary search, and an external storage device (first storage device) 14 for storing the dictionary 1 shown in FIG. 2 and other data. , a control circuit 12 that controls an external storage device 14 according to commands issued by a CPU (central processing unit) 11, an internal memory (second memory table f) 13 that is directly read and written from the CPU 11, and a program area of the internal memory 15. The input/output device 19 and the control circuit 12 are controlled according to a program stored in the internal memory 15, and a dictionary search is performed using the buffer area 17 and the work area 16 of the internal memory 13.
以下、装置10の動作を説明する。The operation of the device 10 will be explained below.
入出力装置119から入力されたキーワードはCPU1
1にとりこまれ、作業領域16に格納される。CP U
llは該キーワードをもとに制御回路12す介して辞書
1の一部をバッファ領域17に読み込み、比較、一致等
の処理を行う辞書検索ご実行する。辞書検索の結果得た
情報は、CP Ullによって入出力装置19に出力さ
れ、一連の動作を終了する。The keyword input from the input/output device 119 is sent to the CPU1
1 and stored in the work area 16. CPU
Based on the keyword, a part of the dictionary 1 is read into the buffer area 17 via the control circuit 12, and a dictionary search is executed to perform processing such as comparison and matching. The information obtained as a result of the dictionary search is output to the input/output device 19 by the CPU Ull, and the series of operations ends.
ここで、本実施例の主要部分である辞書1について更に
説明を加える。辞書1は第2図に示されるように、正順
のマスタインデックス(正順のマスタインデックスフア
イル)100、逆順のマスクインデックス(逆順のマス
タインデックスファイル)600、正順のサブインデッ
クス(正順のサブインデックスファイル)200、逆順
のサブインデックス(逆順のサブインデックスファイル
) 700、正順のポインタインデックス(正、咄のポ
インタインデックスファイル)500、逆順のポインタ
インデックス(逆順のポインタインデックスファイル)
800 および辞書内容(辞書データファイル)30
0から構成されている。Here, the dictionary 1, which is the main part of this embodiment, will be further explained. As shown in FIG. 2, the dictionary 1 includes a master index in forward order (master index file in forward order) 100, a mask index in reverse order (master index file in reverse order) 600, and a subindex in forward order (subindex in forward order). index file) 200, reverse order sub-index (reverse order sub-index file) 700, forward order pointer index (positive, 咄 pointer index file) 500, reverse order pointer index (reverse order pointer index file)
800 and dictionary contents (dictionary data file) 30
Consists of 0.
以上の辞書1の構成要素において、辞書内容300は辞
書検索の目的とする情報を集めたものであり、その他は
キーワードをもとに目的の情報を導くインデックスを集
めたものである。辞書内容300に含まれる情報として
は文字コード、画像情報、音声情報などの形態がある。Among the constituent elements of the dictionary 1 described above, the dictionary contents 300 is a collection of information targeted for dictionary search, and the others are a collection of indexes that lead to target information based on keywords. The information included in the dictionary contents 300 is in the form of character codes, image information, audio information, and the like.
各情報に対して見出し語がわりあてられ、辞書検索はキ
ーワードと該見出し語の比較。A headword is assigned to each piece of information, and dictionary searches are performed by comparing the keyword and the headword.
一致処理から行われる。以下に英和辞書の検索を例にと
り説明する。この場合、見出し語は英単語であり、目的
とする情報は単語の意味内容を表わす文章、すなわち文
字コードの集合である。This is done from matching processing. The following describes an example of searching an English-Japanese dictionary. In this case, the headword is an English word, and the target information is a sentence expressing the meaning of the word, that is, a set of character codes.
第3図は辞書内容300と正順のポインタインデックス
500及び逆順のポインタインデックス800の関係を
示している。辞書内容600は、特定の長さによって区
切られるか或いは特定の区切りフードによって区切られ
る文字コードの集合301.302゜306等から構成
される。各文字コードの集合301゜302、303に
は見出し語501.502.503が対応し、見出し語
501.502.503の語順を逆さにした逆順の見出
し語801.802.803も文字フードの集合301
.302゜303に対応する。FIG. 3 shows the relationship between the dictionary contents 300, the forward order pointer index 500, and the reverse order pointer index 800. The dictionary content 600 is composed of a set of character codes 301, 302, 306, etc. separated by a specific length or separated by a specific separator hood. The headword 501.502.503 corresponds to each character code set 301, 302, 303, and the reverse headword 801.802.803, which is the reverse word order of the headword 501.502.503, is also a set of character hoods. 301
.. Corresponds to 302°303.
各見出し語は、対応する文字コードの集合が記録されて
いる外部記憶装置14上のアドレス情報と共に各々特定
の語長で区切られるか或いは特定の区切りフードで区切
られてアルファベット類に並び、見出し語501.50
2.503等から正順のポインタインデックス500、
見出し語801.802.803等から逆順のポインタ
インデックス800が形成される。Each entry word is arranged in alphabetical order, separated by a specific word length or separated by a specific delimiter hood, together with address information on the external storage device 14 in which a set of corresponding character codes is recorded. 501.50
2. Pointer index 500 in positive order from 503 etc.
A pointer index 800 in reverse order is formed from headwords 801, 802, 803, etc.
ここにおいて、辞書内容300の外部記憶装置14上へ
の配置は任意である。即ち、正順のポインタインデック
ス500及び逆順のポインタインデックス800にそれ
ぞれ含まれる見出し胎には該見出し語に対応する文字コ
ードの集合が外部記憶装置14上のどこに配されている
かを示すアドレス情報が付加されているため、辞書内容
300がどこに配置されていても確実に検索することが
できる。従って外部記憶装置14上に記録、再生ができ
ない欠陥箇所がありても、その部分を避けて辞書内容3
00を配置することができる。Here, the arrangement of the dictionary contents 300 on the external storage device 14 is arbitrary. That is, address information indicating where on the external storage device 14 a set of character codes corresponding to the headword is located is added to each header included in the forward order pointer index 500 and the reverse order pointer index 800. Therefore, the dictionary contents 300 can be reliably searched no matter where they are placed. Therefore, even if there is a defective part on the external storage device 14 that cannot be recorded or played back, the dictionary contents 3
00 can be placed.
第4図は正順のポインタインデックス500と正順のサ
ブインデックス200の関係分表わしている。FIG. 4 shows the relationship between the pointer index 500 in normal order and the sub-index 200 in normal order.
正順のポインタインデックス500をある特定の大きさ
のブロック、例えば外部記憶装置14上及び制御回路1
2で取扱う最小単位であるセクタサイズに分割する。こ
のときポインタインデックス500に含まれる見出し語
とアドレス情報の対が異なるブロックにまたがることの
ないように、ブロックの末尾には見出し語に使用されな
いコードを充填する。正順のサブインデックス200は
正順のポインタインデックス500の各ブロック510
,520等の先頭の見出し語501.521.・・・5
31等を集め、各々特定の長さで区切るか或いは特定の
区切りコードによって区切り、アルファベット類に並べ
たものである0
従って、正順のサブインデックス200のn番目の見出
し語は正順のポインタインデックスの一番目のブロック
の先頭の見出し語であり、また、正順のポインタインデ
ックス500のn番目のブロックの最後の見出し語は正
順のサブインデックス200のル+1@目の見出し語よ
りもアルファベットの順が先行している。但し、正順の
ポインタインデックス500のn番目のブロックの最後
の見出し語の後項でありかつル+1番目のブロックの先
頭の見出し語丁なわち正順のサブインデックス200の
ル+1番目の見出し語の先順となる見出し語は存在しな
い。The pointer index 500 in forward order is stored in a block of a certain specific size, for example, on the external storage device 14 and the control circuit 1.
Divide into sector size, which is the minimum unit handled in step 2. At this time, a code that is not used as a headword is filled at the end of the block so that the pair of headword and address information included in the pointer index 500 does not span different blocks. The sub-index 200 in forward order corresponds to each block 510 of the pointer index 500 in forward order.
, 520 etc. headword 501.521. ...5
31, etc., separated by a specific length or by a specific delimiter code, and arranged in alphabetical order.0 Therefore, the nth headword of the sub-index 200 in the normal order is a pointer index in the normal order. It is the headword at the beginning of the first block of The order is ahead. However, the entry word after the last headword of the n-th block of the pointer index 500 in forward order and the headword at the beginning of the +1st block, that is, the headword of the +1st headword of the sub-index 200 in forward order. There is no headword that precedes .
ここにおいて、正順のポインタインデックス500の外
部記憶装置14上への配置は、正順のサブインデックス
200の見出し語の順番から一意に求まる位置に該見出
し語に対応するブロックな配置する。。Here, the forward order pointer index 500 is arranged on the external storage device 14 in a block corresponding to the headword at a position uniquely determined from the order of the headword in the forward order sub-index 200. .
但し、正順のポインタインデックス500中のあるブロ
ックが配置されるべき外部記憶装置14上の一部分に欠
陥箇所があった場合、該ブロックに対応する正順のサブ
インデックス200中の見出し語の前に特定の欠陥ブロ
ックフードを挿入する。However, if there is a defect in a part of the external storage device 14 where a certain block in the forward order pointer index 500 is to be placed, the entry word in the forward order sub-index 200 corresponding to the block is Insert specific defective block hoods.
すなわち、正順のサブインデックス200中のに番目の
見出し語に対応する正順のポインタインデックス500
のに番目のブロックご配置すべき外部記憶装置14上の
位置に欠陥があった場合、正順のサブインデックス20
0のに番目の見出し語のかわりにある特定の欠陥ブロッ
クフードを置き、該に番目の見出し語はに+1番目の見
出し語の位置に置き、K+1番目の見出し語はに+2番
目の見出し語の位置におく。以下順次見出し語の順2送
ることで、対応する正順のポインタインデックス500
の各ブロックの外部記憶装置14上への配置される位置
ご変更する。変更の結果、再度他の欠陥箇所へ配置され
た場合は、正順サブインデックス200のに+1番目の
見出し語のかわりに欠陥ブロックコードを置き同様の手
順によって正順の・ト°インタインデックス500中の
各ブロックが配rtigれる位置を変更する。外部記憶
装置14上の欠陥箇所を以上の手続きにより避けて正順
のポインタインデックス500を配置する。That is, the pointer index 500 in the normal order corresponding to the th headword in the sub-index 200 in the normal order
If there is a defect in the position on the external storage device 14 where the block should be placed, the sub-index 20 in the normal order
Place a certain defective block hood in place of the 0th headword, place the 2nd headword in the +1st headword position, and place the K+1st headword in the position of the +2nd headword. put it in position. By sequentially sending the headwords in order 2, the corresponding forward order pointer index 500
The location of each block on the external storage device 14 is changed. As a result of the change, if the defective block is placed in another defective location again, place the defective block code in place of the +1st headword in the forward order sub-index 200 and use the same procedure to place it in the forward order sub-index 500. Change the position where each block is placed. The defective locations on the external storage device 14 are avoided by the above procedure and the pointer indexes 500 are placed in the correct order.
尚、逆順のサブインデックス700の生成方法及び逆順
のポインタインデックス800の外部記憶装置14上へ
の配置方法並びに両者の関係は以上に述べた正順のサブ
インデックス200の生成方法及び正順のポインタイン
デックス500の配置方法並びに両者の関係と同様であ
るので説明を省略する。The method for generating the sub-index 700 in reverse order, the method for arranging the pointer index 800 in reverse order on the external storage device 14, and the relationship between the two are the same as the method for generating the sub-index 200 in normal order and the pointer index in normal order described above. Since the arrangement method of 500 and the relationship between the two are the same, the explanation will be omitted.
第5図は、正順のマスクインデックス100と正順のサ
ブインデックス200との関係を示している0正順のマ
スタインデックス100の生成方法及び正順のサブイン
デックス200の配置方法は、既に述べた正j’bのポ
インタインデックス500及び正順のサブインデックス
200の生成方法及び配置方法と同様の手続号とる。丁
なわち、見出し語を分断することなく正順のサブインデ
ックス200をある特定の大きさのブロックに分割し、
分割された該ブロックの各々先頭の見出し語を集めて正
順のマスタインデックス100を生成する。但し、正順
のサブインデックス200の各ブロックには、該ブロッ
クより先順の全てのブロックの見出し語の数B合計した
データが含まれている。FIG. 5 shows the relationship between the mask index 100 in normal order and the sub-index 200 in normal order. The procedure number is similar to the method of generating and arranging the pointer index 500 of positive j'b and the sub-index 200 in positive order. In other words, the sub-index 200 in normal order is divided into blocks of a certain size without dividing the headword,
The headwords at the beginning of each of the divided blocks are collected to generate a master index 100 in normal order. However, each block of the sub-index 200 in the forward order includes data that is the sum of the number B of headwords of all blocks preceding the block.
正順のサブインデックス200の各ブロックの外部記憶
装置14上への配置は正順のポインタインデックス50
0のブロック配置と同じ手順で外部記憶装置14上の欠
陥箇所を避けて配置され、従って正順のマスクインデッ
クス100は欠陥ブロックコードを含んだ形となる。The arrangement of each block of the sub-index 200 in the normal order on the external storage device 14 is based on the pointer index 50 in the normal order.
The blocks are arranged in the same manner as block arrangement 0, avoiding defective locations on the external storage device 14, so that the mask index 100 in normal order includes the defective block code.
逆順のマスクインデックス600の生成と逆順のサブイ
ンデックス700の配置も、正順のマスクインデックス
100の生成、正順のサブインデックス200の配置と
同一の手続きで行われる。The generation of the mask index 600 in the reverse order and the arrangement of the sub-indexes 700 in the reverse order are performed by the same procedure as the generation of the mask index 100 in the normal order and the arrangement of the sub-indexes 200 in the normal order.
以上の操作で生成された正順のマスクインデックス10
0及び逆順のマスタインデックス600が大きなもので
あれば更に上位のインデックスを正順のサブインデック
ス200から正順のマスタインデックス100を生成し
た場合と同じ手順で求め、この作業をくり返すことによ
って最上位のマスクインデックスご充分に小さなものと
することができる。本実施例においては、先に示したマ
スタインデックスの段階までとする。正順のマスタイン
デックス100及び逆順のマスタインデックス600は
、外部記憶装置14上の欠陥のない任意の位置におけば
よい。Mask index 10 in normal order generated by the above operations
If the 0 and reverse master index 600 are large, obtain a higher index using the same procedure as when generating the forward master index 100 from the forward sub-index 200, and repeat this process to obtain the highest index. The mask index can be made sufficiently small. In this embodiment, the process up to the master index stage shown above is assumed. The forward order master index 100 and the reverse order master index 600 may be placed at any defect-free position on the external storage device 14.
ブロックサイズを2048バイト、見出し語の平均長を
5バイトとすると、マスタインデックス1ブロツクは4
10のサブインデックスのブロックから成り、410の
サブインデックスのブロックは410x 410 =1
68100のポインタインデックスのブロックからなり
、168100のポインタインデックスには見出し語の
平均長5バイト、アドレス情報(ポインタデータ)3バ
イトとすると合計16810n x 256= 430
33600の見出し語が含まれることになる。If the block size is 2048 bytes and the average length of headwords is 5 bytes, one master index block is 4 bytes.
It consists of a block of 10 sub-indexes, and a block of 410 sub-indexes is 410x 410 = 1
It consists of a block of 68100 pointer indexes, and if the 168100 pointer indexes have an average headword length of 5 bytes and address information (pointer data) of 3 bytes, the total is 16810n x 256 = 430.
This will include 33,600 headwords.
さて、以上の手続きによって構成された辞書1な、ある
キーワードWで検索し、その結果として文字フードの集
合Sを求める手順を以下に説明する。本発明において、
キーワードWは求める文字コードの集合Sの見出し語工
と完全に一致していなくてもよい。完全なキーワードW
o ”見出し語Iがbirdlであった場合、不定の文
字列を表すコート’*’f用イ’T:キ−ry−ドW1
= ’ bit* ’、キーワードW2 = ’ b*
rd ’、キーワードW3=’*ird’のいずれでも
検索が可能である。Now, the procedure for searching the dictionary 1 constructed by the above procedure using a certain keyword W and obtaining a set S of character fonts as a result will be explained below. In the present invention,
The keyword W does not have to completely match the index word of the desired character code set S. Complete keyword W
o ”If headword I is birdl, code '*'f i'T representing an indefinite character string: Key-ry-word W1
= 'bit*', keyword W2 = 'b*
rd', keyword W3='*ird' can be used to search.
まずCP Ullは、入出力装置19より入力されたキ
ーワードを内部メモリ13の作業領域に格納する。First, the CPU Ull stores the keyword input from the input/output device 19 in the work area of the internal memory 13.
−CPU11はキーワードを検査して不定の文字(列)
を表わすコード*″の有無及び位置を確認する。- The CPU 11 checks the keyword and finds undefined characters (strings).
Check the presence and location of the code *'' that represents.
*′がない場合、すなわち完全なキーワードWOの場合
は以下の手順で目的の文字フードの集合を得る0
(1) CPU11は、制御回路12を介して正順の
マスタインデックス100’を内部メモリ13内のバッ
ファ領域17に読み込む。
((2) CPU11は、キーワードWoとマスク
インデックス100の見出し語を順次比較する処理をキ
ーワードWOより後順になる見出し珀を発見するまで、
見送った見出し語の数をカウントしつつ繰り返す。該当
する見出し語が発見できなかった場合は、見送った見出
し語数に1を減算して終了する0第5図に示された例で
あれば、まず第 (1の見出し語101 ’ abac
us と比較、キーワードwo′bird #の先順で
あるため次なる見出し語102kid と比較、後順
であるので処理を終える。If there is no *', that is, if the keyword is a complete keyword WO, obtain a set of target character hoods using the following procedure. (1) The CPU 11 stores the master index 100' in normal order through the control circuit 12 in the internal memory 13. The data is read into the buffer area 17 inside.
((2) The CPU 11 performs the process of sequentially comparing the keyword Wo and the headwords of the mask index 100 until it finds a headword group that comes after the keyword WO.
Repeat while counting the number of headwords you missed. If the corresponding entry word is not found, subtract 1 from the number of missed entry words and exit.
Since the keyword wo'bird # is in the first order, it is compared with the next headword 102kid, and since it is the second one, the process is finished.
この間見過った見出し詔の数は1である。The number of headline edicts that were overlooked during this time was 1.
(3)見送った見出し語数をmとした場合に、CPTJ
llは外部記憶表@14より正順のサブインデックス2
00の第m番目のブロックをバッファ領域17に読み込
む。該第m番目のブロックの外部記憶装置14上の位置
は、前述のようにmBもとに一意にもとめられる。本実
施例ではm=1であるため、正j1αのサブインデック
ス200の第1のブロック210がバッファ領域17に
読み込まれも4) CPtJllは、サブインデック
ス200の第1のブロック210の見出し語に対し、キ
ーワードW。(3) If the number of headwords that have been postponed is m, CPTJ
ll is sub-index 2 in positive order from external storage table @14
The m-th block of 00 is read into the buffer area 17. The position of the m-th block on the external storage device 14 is uniquely determined based on mB as described above. In this example, since m=1, the first block 210 of the sub-index 200 with positive j1α is read into the buffer area 17. , keyword W.
にもとづき前記(2)と同様の検索を行う。このとき見
送った見出し給の数をtとする。本実施例では1見出し
@211 ’ abacus ’及び見出し語212a
rmy が見送られ、次の見出し飴213’″−o1t
1で検索を終える。従ってt=2である。Based on this, the same search as in (2) above is performed. Let t be the number of headline pays that are postponed at this time. In this example, 1 heading @ 211 ' abacus ' and the entry word 212a
rmy was sent off and the next headline candy 213'''-olt
Finish the search with 1. Therefore, t=2.
5) CPU11は、正;頃のサブインデックス20
0の第m番目のブロックに予め記されている第1番目の
ブロックから第m −1番目のブロックまでに格納され
ている見出し語の総数Pを読み込み、前記(4)で求め
た見送った見出しtB N tと加算して外部記憶装置
14から正順のポインタインデックス500の第P+を
番目のブロックをバッファ領域17に読み込む。本実施
例においては、m=1であるためP=0で、該当する正
順のポインタインデックス500のP+t=2番目のブ
ロック520がバッファ領域17に読み込まれる。5) CPU11 is positive; sub-index 20
The total number P of headwords stored from the first block to the m-1th block written in advance in the m-th block of 0 is read, and the skipped headings obtained in (4) above are read. tB N t and reads the P+th block of the pointer index 500 in forward order from the external storage device 14 into the buffer area 17 . In this embodiment, since m=1, P=0, and P+t=2nd block 520 of the corresponding pointer index 500 in forward order is read into the buffer area 17.
(6) CPU11は、読み込まれた正順のポインタイ
ンデックス500の第P+を番目のブロックの見出し語
とキーワードWo ’E逐次比較する処理を一致する見
出し語を検出するまで繰り返す。但し、第P+を番目の
ブロックに該当する見出し語が存在しなければ、入出力
装置19にエラーの検出ご表示するなどして、辞書検索
処理を異常終了する。本実施例では、第4図に示すよう
に、P+t=2番目のブロック520中に見出し語50
3birdを発見する。(6) The CPU 11 repeats the process of sequentially comparing the P+ of the read pointer index 500 in the normal order with the headword of the th block until a matching headword is detected. However, if there is no headword corresponding to the P+th block, an error detection message is displayed on the input/output device 19, and the dictionary search process is abnormally terminated. In this embodiment, as shown in FIG.
Discover 3birds.
(7)CPU11は正順のポインタインデックス500
中に発見したキーワードWoと一致する見出し語工に付
加するアドレス情報をもとに外部記憶装置14より辞書
内容500の中の文字コードの集合306を読み込む。(7) The CPU 11 has a pointer index of 500 in forward order.
A set of character codes 306 in the dictionary contents 500 is read from the external storage device 14 based on the address information to be added to the entry word that matches the keyword Wo found therein.
(8)CPU11は、前記(7)で読み込んだ文字コー
ドの集合303を入出力装置It19に出力し、辞書検
索処理を正常に終了する。(8) The CPU 11 outputs the character code set 303 read in above (7) to the input/output device It19, and normally ends the dictionary search process.
次に、キーワードの末尾に不定の文字(列)を示すコー
ドゝ*″を持つキーワードW1を用いた検索の手順につ
いて説明する。Next, a search procedure using the keyword W1 having the code "*" indicating an undefined character (sequence) at the end of the keyword will be described.
(1) CPU11は、キーワードW1の不定の文字
(列)の手前の文字列ごキーワードW:とする。本実施
例においては、’W+ = ’ b 1r ’である。(1) The CPU 11 sets the character string before the indefinite character (sequence) of the keyword W1 as keyword W:. In this embodiment, 'W+='b 1r'.
(2)前述のWoを用いた辞書検索と同様の手順で正順
のマスタインデックス100、正順のサブインデックス
200を検索し、正順のポインタインデックス500の
ある1ブロツクをバッファ領域17に読み込む。(2) Search the master index 100 in normal order and the sub-index 200 in normal order using the same procedure as the dictionary search using Wo described above, and read one block with the pointer index 500 in normal order into the buffer area 17.
(6) キーワードW12もとに正順のポインタイン
デックス500を検索する。この場合、比較するのはキ
ーワードW:に含まれている文字数のみである。見出し
語がW:より長い場合は先頭からキーワードW+の文字
数分のみ比較、一致を取る。本実施例ではW、= b
ir であるから見出し語の語頭部3文字のみを比較
の対象とする。(6) Search the pointer index 500 in normal order based on the keyword W12. In this case, only the number of characters included in the keyword W: is compared. If the headword is longer than W:, only the number of characters of the keyword W+ from the beginning are compared and matched. In this example, W, = b
Since it is ir, only the first three characters of the headword are to be compared.
(4)一致する見出し語が検出されたら、入出力装置1
9へ出力する。この場合、該当する見出し語工が複数あ
った場合、全てを出力する。本実施例では工= blr
aの他に b i rdy′、 birth 他が候
補として出力される。(4) When a matching headword is detected, input/output device 1
Output to 9. In this case, if there are multiple corresponding entry words, all of them are output. In this example, engineering = blr
In addition to a, b i rdy', birth, and others are output as candidates.
(5)正順のポインタインデックス500内の該ブロッ
ク中に該当する見出し語が検出されなかった場合は、異
常終了する。又、該ブロックの最後の見出し語も該当し
た場合は続くブロックご読み込み、該当しない見出し語
が検出されるまでくり返す。(5) If the corresponding headword is not detected in the block in the forward pointer index 500, the process ends abnormally. If the last headword of the block also matches, the subsequent block is read and repeated until a headword that does not match is detected.
以上の手順により、不定の文字(列)を示すコードを語
尾に持つキーワードW1による検索号行う。According to the above procedure, a search is performed using the keyword W1 having a code indicating an indefinite character (sequence) at the end of the word.
続いて、先頭に不定の文字(列)を含むキーワードWS
による検索について説明する。Next, keyword WS containing an undefined character (sequence) at the beginning
We will explain the search by .
(1) CPU11はキーワードWsを語尾から検査
し、文字の順を逆順にしながら不定の文字(列)牙示す
コードの手1Uマでの文字列から成るキーワードW5を
生成する。本実施例においてはW5 = ’ *i r
d″であるからW:=′″dri′となる。(1) The CPU 11 examines the keyword Ws from the end of the word, and generates a keyword W5 consisting of a character string of 1 U of code indicating an indefinite character (sequence) while reversing the order of the characters. In this embodiment, W5 = ' *i r
d″, so W:=′″dri′.
(2) CPU11は、逆順のマスタインデックス6
00及び逆順のサブインデックス700 i前述のキー
ワード〜■oによる検索と同様の手順で模索し、逆11
のポインタインデックス800中のあるプロ。(2) The CPU 11 uses the master index 6 in reverse order.
00 and reverse order sub-index 700 i Search using the same procedure as the above keyword ~
A professional in the pointer index 800.
りごバッファ領域17に読み込む。The data is read into the remote buffer area 17.
(3) 前述のキーワードW+ fもとに正順のポイ
ンタインデックス500を検索し、該Wに対応する見出
しJ5を出力したと同様の手順によって、逆順のポイン
タインデックス800中の前記ブロックごキーワードW
;によって検索し、これに対応する見出し語?出力する
。但し、見出し語ご出゛カする際は文字列のi:lLi
’fc逆にして正順に直した後出力Tる。なお、本実施
例では drib ’−+ bird ’、dr上ht
+ third 等が検索されるので、それらの
見出し−に付加されたアドレス情報をもとに、文字コー
ドの集合を得ることができる。(3) Search the pointer index 500 in the forward order based on the keyword W + f described above, and use the same procedure to output the heading J5 corresponding to the keyword W, to find the keyword W in the block in the pointer index 800 in the reverse order.
Search by ; and the corresponding headword? Output. However, when a headword appears, the character string i:lLi
'fc is reversed and corrected to normal order, then output T. In addition, in this embodiment, drib '-+ bird ', dr upper ht
Since + third etc. are searched, a set of character codes can be obtained based on the address information added to those headings -.
更に、キーワードの文字列中に不定の文字(列)を示す
コードが含まれている、キーワードW2による検案につ
いて説明する。不実施例においてはW24b*rdであ
る。Furthermore, a description will be given of a proposal based on the keyword W2, in which the keyword character string includes a code indicating an undefined character (sequence). In non-embodiments, it is W24b*rd.
(1)CPU11は、キーワードW2′fr:語の先頭
及び末尾から検査してそれぞれ不定の文字(列)を示す
コードの手前までを切り出しw; 、 W;とする。但
しW2は正順、W′:lは逆順になっている。本実施例
においてはW′2= ’ b’ l W2 = ’dr
’ テアル。(1) The CPU 11 examines the keyword W2'fr: from the beginning and end of the word, and cuts out the words up to the code indicating the indefinite character (sequence), respectively, and sets them as w; and W;. However, W2 is in forward order, and W':l is in reverse order. In this embodiment, W'2='b' l W2='dr
' Theal.
(2) W2’により逆順のマスタインデックス60
0.逆順のサブインデックス700.逆順のポインタイ
ンデックス800をW4.Wsと同様の手順で検索し、
逆順のポインタインデックス800の該当する見出し語
に付加されたアドレス情報を作業領域16に記憶する。(2) Master index 60 in reverse order by W2'
0. Reverse order sub-index 700. The reverse pointer index 800 is set to W4. Search using the same procedure as Ws,
The address information added to the corresponding headword of the reverse pointer index 800 is stored in the work area 16.
(3) W2により、正順のマスタインデックスio
o。(3) By W2, the master index io in forward order
o.
正順のサブインデックス200.正順のポインタインデ
ックス500 E検索する。ここで、正順のポインタイ
ンデックス500中の該当する見出し詰に付加されたア
ドレス情報と、上記(2)において作業領域16に記憶
されたアドレス情報を比較し、一致Tるものがあった場
合のみ、入出力袋f19へ検索結果として出力する。ア
なわち、キーワードW;に該当するものとキーワードW
’2に該当するものの論理積をとって検索の結果とする
。Forward order sub-index 200. Search pointer index 500 E in forward order. Here, the address information added to the corresponding heading in the forward order pointer index 500 is compared with the address information stored in the work area 16 in (2) above, and only if there is a match T. , output as a search result to the input/output bag f19. In other words, what corresponds to the keyword W; and the keyword W
The logical AND of the items corresponding to '2 is taken as the search result.
なお、このキーワードの文字列中に不定の文字(列)を
示すコードが含まれている、キーワードW2による検索
については、上記の検索以外にも次のような検索が可能
である。すなわち、逆順のポインタインデックス800
から文字列W;で始まるすべての見出し語を検索した後
、これら見出し語列を、文字列W2の前後類を入れ換え
た文字列W;′により再検索したり、また正順のポイン
タインデックスの中から文字列W:と一致する見出し語
を検索した後、これら見出し語列を、文字列W;を正順
に直した文字列で再検索したりしても上記と同様の検索
結果?得ることができる0
以上の説明から明らかなように、本実施例によれば、キ
ーワードの不定の文字(列)を示すフードが含まれてい
る場合、含まれていない場合、また含まれている場合で
あればそれが語頭部、訪中、語尾のいずれであっても検
索が可能となる。Note that, in addition to the above-mentioned search, the following search is also possible regarding the search using the keyword W2, in which the character string of this keyword includes a code indicating an undefined character (sequence). That is, the pointer index 800 in reverse order
After searching for all the headwords starting with the character string W;, these headword strings can be searched again using the character string W;', which has the preceding and following characters of the character string W2 swapped, or in the pointer index in normal order. Even if I search for headwords that match the character string W: from , and then search again for these headword strings with the character strings that are corrected from the character string W;, will I get the same search results as above? As is clear from the above explanation, according to this embodiment, if a hood indicating an indefinite character (string) of a keyword is included, if it is not included, or if it is included. If so, it is possible to search for the beginning of a word, visit to China, or the end of a word.
また本実施例によれば、前記1ブロツクサイズのバッフ
ァ領域で大容量の辞書を検索できるので、省メモリ化の
効果がある。Furthermore, according to this embodiment, a large-capacity dictionary can be searched in the buffer area of one block size, so there is an effect of memory saving.
また本実施例によれば、マスタインデックス→サブイン
デックス→ポインタインデックス→辞書内容というよう
に検索を行なっているので、検索処理の高速化を実現で
きる効果がある。Further, according to this embodiment, since the search is performed in the order of master index→sub index→pointer index→dictionary contents, it is possible to speed up the search process.
さらに本実施例によれば、不定の文字(列)を示すコー
ドが使用できるので、語尾検索や語幹検索など辞書機能
拡張の効果がある。Furthermore, according to this embodiment, since codes indicating undefined characters (sequences) can be used, dictionary functions can be expanded such as word ending searches and word stem searches.
加えて本実施例によれば、前述したように、1ブロツク
の大きさを2o48バイトとし、平均見出し語長を5バ
イトとすると、1ブロツクのマスタインデックスファイ
ルで、41oブロツクのサブインデックスファイルヲ管
理することができ、さらに、サブインデックスファイル
の各ブロックがそれぞれポインタインデックスファイル
の410ブロツク分コ管理することができる。すなわち
、1ブロツクのマスタインデックスファイルで、168
100ブロツク(s4a xガバイト)の大容量ポイン
タインデックスファイルを管理することができる。仮に
2ブロツク分のバッファメモリを用意したとすると、同
様な計算により671000ブロツク(2,7ギガバイ
ト)もの大容量ポインタインデックスファイルご管理す
ることができるなどの効果がある。In addition, according to this embodiment, as described above, if the size of one block is 2o48 bytes and the average headword length is 5 bytes, a master index file of one block can manage subindex files of 41o blocks. Furthermore, each block of the sub-index file can manage 410 blocks of the pointer index file. In other words, one block of master index file has 168
It is possible to manage a large capacity pointer index file of 100 blocks (s4ax GB). Assuming that a buffer memory for two blocks is prepared, a similar calculation will yield the advantage that a large capacity pointer index file of 671,000 blocks (2.7 gigabytes) can be managed.
以上の実施例では、辞書内容300の各見出し語からな
る正順のポインタインデックスを作成し、これを用いて
検索を行なった場合であったが、辞書内容300を、一
定の順序(本実施例ではABC順)に並べられた見出し
語と該見出し飴に対応するデータから構成するようにす
れば、前記正順のポインタインデックス5ooは不要と
なる。In the above embodiment, a pointer index in forward order consisting of each headword in the dictionary content 300 was created and a search was performed using this. However, the dictionary content 300 is If the index words are arranged in alphabetical order (in alphabetical order) and data corresponding to the index candies, the pointer index 5oo in normal order becomes unnecessary.
また、以上の実施例では、正順のマスタインデックス1
00および逆順のマスタインデックス600を検索処理
時にバッファ領域17にロードして使用する場合であっ
たが、本発明では、検索処理時に使用頻度の高いこれら
マスタインデックス100および600を、内部メモリ
13内にマスタインデックス領域(図示せず)ご設けて
、該領域に常駐または電源オン時にあらかじめロードし
ておくように−してもよい。In addition, in the above embodiment, the master index 1 in the forward order
00 and the master index 600 in reverse order were loaded into the buffer area 17 and used during search processing, but in the present invention, these master indexes 100 and 600, which are frequently used during search processing, are stored in the internal memory 13. A master index area (not shown) may be provided and the data may be resident in the area or loaded in advance when the power is turned on.
本発明によれば、ブロックサイズとして限られたメモリ
量で、大容量の辞書データファイルな検索できるので、
メモリ利用効率の向上に効果がある。According to the present invention, a large-capacity dictionary data file can be searched with a limited amount of memory as a block size.
This is effective in improving memory usage efficiency.
また、本発明によれば、辞書データファイルが大容量で
あっても検索に使用する内部メモリを小さくできるので
、小メモリの小型電子計算機でも充分に高速な検索が可
能であり、シタがって大容量の辞書データ検索装置の価
格低減に効果がある。Furthermore, according to the present invention, even if the dictionary data file has a large capacity, the internal memory used for searching can be made small, so even a small computer with a small memory can perform a sufficiently high-speed search. This is effective in reducing the price of a large-capacity dictionary data search device.
更に本発明によれば、多数の見出し語を集めてブロック
分割し、各々のブロックの先頭の見出し語を集めて上位
のサブインデックスファイルおよびマスタインデックス
ファイルを形成するため、上位のサブインデックスファ
イルもしくはマスタインデックスファイルに並ぶ見出し
語は隣合った見出し語同志であっても文字の重なりが少
なくなり、したがって、検索の際に比較する文字数が少
なくてもよいので、検索時間を短縮できる効果がある。Furthermore, according to the present invention, a large number of headwords are collected and divided into blocks, and the headwords at the beginning of each block are collected to form an upper sub-index file and a master index file. Even if the headwords lined up in the index file are adjacent headwords, there will be less character overlap, and therefore the number of characters to be compared during a search may be reduced, which has the effect of shortening the search time.
加えて、順序関係もしくは大小関係の規定され。In addition, order relationships or magnitude relationships are specified.
たデータであれば、該見出し語を本発明の各インデック
スファイルの見出し語に用いる見出し語?用いたことが
でき、したがって、本発明は、例えばカタカナ見出し語
(アイウェオ順)、英語見出し語(A B C順)、数
字見出し語(123順)などを用いた辞書データファイ
ルの検索に利用することができる。If the data is a headword, is the headword used as a headword for each index file of the present invention? Therefore, the present invention can be used to search dictionary data files using, for example, katakana headwords (in Aiweo order), English headwords (in A B C order), numerical headwords (in 123 order), etc. be able to.
また、不定の文字もしくは不定の文字列が・キーワード
のどのような位置に存在しても、辞書データファイル中
の見出し語を検索することができる。Further, no matter where an indefinite character or an indefinite character string is present in the keyword, the entry word in the dictionary data file can be searched.
不定の文字を含まないキーワードに対する辞書データ検
索に関しては、検索すべき文字列がどのようなものでも
、正順のマスタインデックスファイル、正順のサブイン
デックスファイル、辞書データファイルご用いて目的と
する見出し語を検索でき、この結果、高速に大容量辞書
データファイルを検索することができる。When searching dictionary data for keywords that do not contain irregular characters, no matter what the character string to be searched for, you can use the master index file in normal order, the subindex file in normal order, and the dictionary data file to find the desired heading. Words can be searched, and as a result, large-capacity dictionary data files can be searched at high speed.
なお、不定の文字(列)ご含むキーワードに応じた辞書
データ検索に関しては、逆順のポインタインデックスフ
ァイルをアクセスする必要のある場合がある。Note that when searching dictionary data in accordance with a keyword that includes undefined characters (sequences), it may be necessary to access a pointer index file in reverse order.
第1図は本発明の辞書データ検索装置の一実施例を示す
ブロック図、第2図は第1図の外部記憶装置に格納され
た辞書の構造2示T図、第3図は辞書内容と正順のポイ
ンタインデックス及び逆順のポインタインデックスの関
係を示す図、第4図は正順のポインタインデックスと正
順のサブインデックスの関係を示す図、第5図は正順の
マスクインデックスと正順のサブインデックスの関係を
示す図である。
1・・°辞書、 11・・CPU。
12・・・制御回路、 13・・・内部メモリ
、14・・・外部記憶装置、15・・・プログラム領域
、16・・・作業領域、17・・・バッファ領域、19
・・・入出力装置、 1oo由正急のマスタイン
デッ200・・・正順のサブインデックス、 クス
1−500・・・正順のポインタインデックス、600
・・・逆順のマスタインデックス、700・・・逆順の
サブインデックス、800・・・逆順のポインタインデ
ックス、300・・・辞書内容。
I□ \
代理人弁理士 小 川 勝 1男
躬 1困
2 第2国
第 30FIG. 1 is a block diagram showing an embodiment of the dictionary data search device of the present invention, FIG. 2 is a diagram 2 showing the structure of the dictionary stored in the external storage device of FIG. 1, and FIG. 3 is a diagram showing the contents of the dictionary. Figure 4 is a diagram showing the relationship between forward pointer indexes and reverse order pointer indexes, Figure 4 is a diagram showing the relationship between forward order pointer indexes and forward order sub-indexes, and Figure 5 is a figure showing the relationship between forward order mask indexes and forward order sub-indexes. FIG. 3 is a diagram showing the relationship between sub-indexes. 1...°Dictionary, 11...CPU. 12... Control circuit, 13... Internal memory, 14... External storage device, 15... Program area, 16... Work area, 17... Buffer area, 19
...I/O device, 1oo yoshikyu master index 200...Sub index in normal order, 1-500...Pointer index in normal order, 600
... Master index in reverse order, 700 ... Sub index in reverse order, 800 ... Pointer index in reverse order, 300 ... Dictionary contents. I□ \ Representative Patent Attorney Masaru Ogawa 1st man 1st trouble 2nd country 30th
Claims (1)
見出し語を入力し、該見出し語に対する検索結果を表示
するための入出力装置と、前記第1の記憶手段および前
記入出力装置を制御する中央処理部と、前記中央処理部
の動作を決定するプログラムや前記入出力装置および前
記第1の記憶手段からのデータを一時格納するための第
2の記憶手段からなる辞書データ検索装置において、 前記辞書データファイルの各ブロックの先頭見出し語を
集めた正順のサブインデックスファイルと、前記正順の
サブインデックスファイルの各ブロックの先頭見出し語
を集めた正順のマスタインデックスファイルと、前記辞
書データファイルの各見出し語文字列の前後順を入れ換
えた逆順見出し語とこの逆順見出し語に対応する辞書デ
ータファイルのアドレスを示すポインタとが格納された
逆順のポインタインデックスファイルと、前記逆順のポ
インタインデックスファイルの各ブロックの先頭見出し
語を集めた逆順のサブインデックスファイルと、前記逆
順のサブインデックスファイルの各ブロックの先頭見出
し語を集めた逆順のマスタインデックスフアイルとを、
それぞれ作成して、前記第1の記憶手段の前記辞書デー
タファイルを検索することを特徴とする辞書データ検索
装置。 2、前記正順のマスタインデックスファイルおよび前記
逆順マスタインデックスフアイルを前記第2の記憶手段
に常駐したことを特徴とする特許請求の範囲第1項記載
の辞書データ検索装置。 3、前記各ブロック長を前記第1の記憶手段における物
理的最小アクセス単位であるセクタもしくは該セクタの
整数倍としたことを特徴とする特許請求の範囲第1項記
載の辞書データ検索装置。 4、前記正順のサブインデックスファイルおよび逆順の
サブインデックスファイルは、正順のサブインデックス
ファイルの各ブロックの先頭見出し語のみを集めた第2
の正順のサブインデックスファイル、逆順のサブインデ
ックスファイルの各ブロックの先頭見出し語のみを集め
た第2の逆順のサブインデックスファイル、さらに同様
な手法で生成した複数個の正順のサブインデックスファ
イルおよび複数個の逆順のサブインデックスファイルか
ら構成されていることを特徴とする特許請求の範囲第1
項記載の辞書データ検索装置。 5、前記各インデックスファイルを前記第1の記憶手段
に記憶したことを特徴とする特許請求の範囲第1項記載
の辞書データ検索装置。 6、前記辞書データファイルの各見出し語が格納された
正順のポインタインデックスファイルを作成し、前記正
順のポインタインデックスファイルの各ブロックの先頭
見出し語を集めたものを前記正順のサブインデックスフ
ァイルとしたことを特徴とする特許請求の範囲第1項記
載の辞書データ検索装置。[Claims] 1. A first storage means that records a dictionary data file;
an input/output device for inputting a headword and displaying search results for the headword; a central processing unit for controlling the first storage means and the input/output device; and determining an operation of the central processing unit. In a dictionary data retrieval device comprising a program, the input/output device, and a second storage means for temporarily storing data from the first storage means, A forward-order sub-index file, a forward-order master index file that collects the headwords at the beginning of each block of the forward-order sub-index file, and a reverse-order index file in which the front and back order of each headword character string in the dictionary data file is reversed. a reverse order pointer index file that stores a word and a pointer indicating the address of a dictionary data file corresponding to the reverse order headword; and a reverse order subindex file that collects the first headword of each block of the reverse order pointer index file. and a master index file in reverse order that collects the headwords of each block of the sub-index files in reverse order.
A dictionary data retrieval device characterized in that the dictionary data files are created respectively and the dictionary data files in the first storage means are retrieved. 2. The dictionary data search device according to claim 1, wherein the forward order master index file and the reverse order master index file are resident in the second storage means. 3. The dictionary data retrieval device according to claim 1, wherein the length of each block is a sector, which is the minimum physical access unit in the first storage means, or an integral multiple of the sector. 4. The forward order sub-index file and the reverse order sub-index file are a second sub-index file that collects only the headwords of each block of the forward order sub-index file.
A forward sub-index file, a second reverse sub-index file that collects only the headwords of each block of the reverse sub-index file, and multiple forward sub-index files generated using the same method. Claim 1, characterized in that it is composed of a plurality of sub-index files in reverse order.
Dictionary data retrieval device described in Section 1. 5. The dictionary data search device according to claim 1, wherein each of the index files is stored in the first storage means. 6. Create a pointer index file in forward order in which each headword of the dictionary data file is stored, and collect the first headwords of each block of the pointer index file in forward order as the subindex file in forward order. A dictionary data search device according to claim 1, characterized in that:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61179946A JPH0752450B2 (en) | 1986-08-01 | 1986-08-01 | Dictionary data retrieval device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61179946A JPH0752450B2 (en) | 1986-08-01 | 1986-08-01 | Dictionary data retrieval device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6337425A true JPS6337425A (en) | 1988-02-18 |
JPH0752450B2 JPH0752450B2 (en) | 1995-06-05 |
Family
ID=16074709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61179946A Expired - Lifetime JPH0752450B2 (en) | 1986-08-01 | 1986-08-01 | Dictionary data retrieval device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0752450B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07129600A (en) * | 1993-11-04 | 1995-05-19 | Canon Inc | Data processing device and dictionary used in the device |
JP2010508606A (en) * | 2006-11-01 | 2010-03-18 | アビニシオ テクノロジー エルエルシー | Storage management of individually accessible data units |
US8489553B2 (en) | 2006-11-01 | 2013-07-16 | Ab Initio Technology Llc | Managing storage of individually accessible data units |
US9811570B2 (en) | 2011-07-08 | 2017-11-07 | Ab Initio Technology Llc | Managing storage of data for range-based searching |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5583962A (en) * | 1978-12-19 | 1980-06-24 | Sharp Corp | Data retrieving system |
JPS60262263A (en) * | 1984-06-07 | 1985-12-25 | Toshiba Corp | Information retriever |
-
1986
- 1986-08-01 JP JP61179946A patent/JPH0752450B2/en not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5583962A (en) * | 1978-12-19 | 1980-06-24 | Sharp Corp | Data retrieving system |
JPS60262263A (en) * | 1984-06-07 | 1985-12-25 | Toshiba Corp | Information retriever |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07129600A (en) * | 1993-11-04 | 1995-05-19 | Canon Inc | Data processing device and dictionary used in the device |
JP2010508606A (en) * | 2006-11-01 | 2010-03-18 | アビニシオ テクノロジー エルエルシー | Storage management of individually accessible data units |
US8489553B2 (en) | 2006-11-01 | 2013-07-16 | Ab Initio Technology Llc | Managing storage of individually accessible data units |
US8639674B2 (en) | 2006-11-01 | 2014-01-28 | Ab Initio Technology Llc | Managing storage of individually accessible data units |
US8949189B2 (en) | 2006-11-01 | 2015-02-03 | Ab Initio Technology Llc | Managing storage of individually accessible data units |
US9811570B2 (en) | 2011-07-08 | 2017-11-07 | Ab Initio Technology Llc | Managing storage of data for range-based searching |
Also Published As
Publication number | Publication date |
---|---|
JPH0752450B2 (en) | 1995-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5099426A (en) | Method for use of morphological information to cross reference keywords used for information retrieval | |
CA2202696C (en) | Method and apparatus for language translation | |
EP0293161B1 (en) | Character processing system with spelling check function | |
US4775956A (en) | Method and system for information storing and retrieval using word stems and derivative pattern codes representing familes of affixes | |
JPH083817B2 (en) | Database search method | |
US6470334B1 (en) | Document retrieval apparatus | |
JPH04274557A (en) | Method and device for searching full text | |
JPS6337425A (en) | Dictionary data search device | |
JPH05101102A (en) | Retrieval device | |
JP3253657B2 (en) | Document search method | |
JP2880192B2 (en) | Character string search method and apparatus | |
JPH08314950A (en) | Text search method and device | |
JP2000227921A (en) | Data retrieval method, apparatus and recording medium | |
JPS62184572A (en) | Dictionary search method for vocative compound words in word segmentation device | |
JPH03131969A (en) | Method and device for retrieving code string | |
JP5648360B2 (en) | Character string search device, character string search method, and character string search program | |
JPS62197822A (en) | Dictionary data search method | |
JP2961888B2 (en) | Document search system using term dictionary | |
JPH0260022B2 (en) | ||
JPS59221732A (en) | Kana-kanji conversion processing device | |
JP2001202388A (en) | Full-text search method and apparatus | |
JPS63213071A (en) | Electronic dictionary | |
JPH0215903B2 (en) | ||
JPS6129938A (en) | Retrieval method | |
JPH0991304A (en) | Information retrieval method, information retrieval system, and information retrieval storage medium |