JPH0682370B2 - 文字処理装置 - Google Patents

文字処理装置

Info

Publication number
JPH0682370B2
JPH0682370B2 JP62128687A JP12868787A JPH0682370B2 JP H0682370 B2 JPH0682370 B2 JP H0682370B2 JP 62128687 A JP62128687 A JP 62128687A JP 12868787 A JP12868787 A JP 12868787A JP H0682370 B2 JPH0682370 B2 JP H0682370B2
Authority
JP
Japan
Prior art keywords
word
dictionary
block
code
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.)
Expired - Lifetime
Application number
JP62128687A
Other languages
English (en)
Other versions
JPS63292365A (ja
Inventor
康 山本
佳三 齋藤
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP62128687A priority Critical patent/JPH0682370B2/ja
Priority to DE3852341T priority patent/DE3852341T2/de
Priority to EP88304675A priority patent/EP0293161B1/en
Priority to US07/198,503 priority patent/US4959785A/en
Publication of JPS63292365A publication Critical patent/JPS63292365A/ja
Publication of JPH0682370B2 publication Critical patent/JPH0682370B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/232Orthographic correction, e.g. spell checking or vowelisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Description

【発明の詳細な説明】 (イ)産業上の利用分野 本発明は、スペルチェックを行うことができる文字処理
装置に関する。
(ロ)従来の技術 従来、この種の文字処理装置におけるスペルチェックに
おいては、スペルチェックする欧文用単語辞書内の単語
をその頭文字順、単語を構成する文字数順というように
2次元テーブルで作成し、その2次元テーブルから該当
する単語を検索する方法が取られている。この検索方法
は、第5表a及び第5表bに示すように“C"から始まる
単語を例に取ると、“C"が先頭で7文字から構成される
単語が1006種あり、同じく“C"が先頭で8文字から構成
される単語では1154種、さらに、“C"が先頭で9文字か
ら構成される単語に至っては1092種もあり、例えば“CO
MPANY"という単語を検索する場合、少なくとも1006回
(2文法であれば503回)比較参照していた。そして、
単に頭文字順のみで分類されている欧文用単語辞書にあ
っては、さらに多くの比較参照を行っていた。
(ハ)発明が解決しようとする問題点 しかし、上記の文字処理装置の欧文用単語辞書のスペル
チェックでは、検索のための処理速度が非常に遅くな
り、タイプライター等でリアルタイム処理をするには到
底耐えられないものであった。また、単語をハッシュコ
ードに直して処理速度を速める方法もあるが、スペルチ
ェック機能実現の次に要求されるコレクト機能(誤綴り
訂正)を考慮した場合、ハッシュコード採用辞書は基の
文字配列を再生できないため、精度が低いという問題を
有している。
本発明は以上の事情に鑑みてなされたもので、その目的
は単語の文字発生頻度をハフマンコードに編集し直し、
かつ単語をブロック単位に分けることによって辞書の記
憶容量の削減を図り、単語をスペルチェックするための
処理速度を速めることにある。
(ニ)問題点を解決するための手段 第1図は、この発明の構成を示すブロック図であり、1
は文字情報および各種の指示を入力する入力手段、2は
入力手段から入力された文字情報を記憶する記憶手段、
3は文字情報を表示する表示手段、4は入力手段の指示
に基づき記憶手段に記憶されている文字情報を表示手段
に出力する制御手段、5はnバイト毎に分割されたブロ
ックを一単位として構成され、1つのブロックにそのブ
ロックの先頭第1単語が所定コードに変換された非圧縮
なバイト単位の文字列として格納され、かつ、先頭第1
単語と関連のある第2単語を含むそれ以降の単語のおの
おのが、その単語の1つ前に格納された単語との共通部
分を表わす相対圧縮コードおよび相対圧縮ができなかっ
た非圧縮コードを出現頻度を考慮して割り付けたハフマ
ンコードに置換された情報として格納される辞書本体部
と、辞書本体部の先頭からのオフセットと、同一の所定
の文字列で始まる単語列が格納されるブロックの数とで
構成されるインデックス部とからなる情報が記憶される
圧縮辞書記憶手段、6はキーワードの先頭2文字より圧
縮辞書記憶手段のインデックス情報の格納されるアドレ
スを計算し、そのインデックスのオフセットおよびブロ
ック数を取出し、ブロックの先頭第1単語についてブロ
ック単位で2分検索を行うスペルチェック手段である。
(ホ)作 用 この発明によれば、スペルチェックを行うと、キーワー
ドの先頭2文字よりインデックス情報の格納されるアド
レスが計算され、インデックスのオフセットおよびブロ
ック数を取出し、次に辞書本体のブロック先頭の先頭第
1単語がブロック単位で2分検索され、キーワードが辞
書本体のどこのブロックに格納されているかを調べて選
択し、選択されたブロックの先頭から順次ハフマンコー
ドを復号し、キーワードを検索するよう作用する。
(ヘ)実施例 以下、図に基づいてこの発明の実施例を詳述する。な
お、これによってこの発明は限定されるものではない。
第2図は、この発明の一実施例の構成を示すブロック図
である。同図において、10は文字,単語情報を入力する
ための入力装置で、例えばキーボード,タブレット装
置,光学式文字読み取り装置,磁気テープ装置等からな
る。11は入力装置10から入力された文字情報を記憶する
記憶装置で、例えばコアメモリ,ICメモリ,磁気ディス
ク等からなる。12は記憶装置11において記憶,編集され
た情報を出力する出力装置で、例えばプリンタ,ディス
プレイ装置,磁気テープ,磁気ディスク装置等からな
る。13は記憶装置2に記憶されている文字,単語データ
の綴り情報の間合せに対して適時有効な情報を提供する
スペルチェック辞書装置で、例えばコアメモリ,ICメモ
リ,RAM,磁気ディスク等からなる。14は上記構成の各装
置間の信号のやりとりを制御する制御装置で、例えばコ
ンピュータからなる。次に、この発明の実施例の特徴部
分であるスペルチェック辞書装置について詳述する。第
3図は、スペルチェック辞書手段としての、辞書容量を
圧縮した圧縮辞書の基本構造である。同図において、圧
縮辞書はインデックス部と辞書本体とによって構成され
ている。インデックス部は、先頭2文字が××で始まる
単語列が格納されている辞書本体の先頭からのオフセッ
トとそのインデックス内に収容される後述するブロック
数から構成されており、辞書本体はnバイト毎に分割さ
れたブロックを単位に構成され、各ブロックの先頭第1
単語は内部コードに変換された非圧縮なバイト単位の文
字列が格納される。
第2単語以降は相対圧縮コード(1つ前の単語との共通
部分を表わすコード)および相対圧縮ができなかった非
圧縮文字コードを出現頻度より割り付けたハフマンコー
ドに置き換えて格納される。
従って××で始まる単語列がブロック長であるnバイト
を超えたならば、同一のインデックス内に複数のブロッ
クが存在するのでスペルチェックを行なう場合は、キー
ワードの先頭2文字よりインデックス情報の格納される
アドレスを計算し、そのインデックスのオフセットおよ
びブロック数を取出す。次にオフセット、ブロック数、
ブロック長nが既知であるため、先程のブロック先端の
非圧縮単語についてブロック単位で2分探索を行なう。
この段階でキーワードがどこのブロックに格納されてい
るかを知ることができるので対象となったブロックの先
頭から順次ハフマンコードを複号しキーワードを検索す
るものである。
取扱う文字種 &,′.0〜9,A〜Z,a〜zの64種但し′はハイフォネート
時に特別の意味をもつ。
辞 書 圧縮を行う原辞書は、複数形や同志の活用形などの変化
形を、原形に対して全く別の単語とみなして登録された
英単語辞書である。また単語長1の英文字は存在するの
で、同様に単語長1の&および′そして数字も無条件に
存在するものとして辞書には2文字以上の単語を登録す
る。
圧縮の基本アルゴリズム 英単語辞書は、アスキーコード順(文字コード順)にリ
ートを行わせると、隣接する単語の相関関係が非常に密
となる。即ち、単語の先頭部分より重複する文字が多数
現れているので、この性質に着目し重複する文字列を特
殊なコードに置き換えるという方法で辞書の圧縮を行う
ことが出来る(第4図参照)。
しかしこの方法で圧縮を行なうと、辞書検索を行なう
際、辞書の先頭から順次検索を行なわなければならない
ので、最悪の場合、辞書に登録されていない単語につい
てスペルチェックを行う際にも、辞書の先頭より末尾ま
で辞書全体にわたって探索が行なわれてしまう。そこで
辞書をある値(ブロック長)nバイトのブロックに分割
し、各ブロックの先頭第1単語は相対圧縮しないとすれ
ば、この非相対圧縮文字列に対してブロック単位で2分
探索法を利用することは可能である(第5図参照)。従
って辞書検索は次の3つのステップによって行う。
i)キーワードのインデックス値よりオフセット、ブロ
ック数等のインデックス情報をインデックステーブルよ
り得る。
ii)i)で得たオフセット、ブロック数そしてブロック
長nによりブロック単位で2分探索を行ないキーワード
の格納されていると考えられるブロックを特定する。
iii)ii)で特定されたブロックについてのみ、そのブ
ロックの先頭から順次探索を行なう。
以上の方法による辞書探索を行えば、シーケンシャルに
探索を行なわなければならない範囲は、最悪の場合でも
ブロック長nとすることができるのでスペルチェック時
の検索時間の高速化を図ることができる。
このような方法を辞書の圧縮と辞書探索の基本的な骨組
とし、さらに圧縮を行なわせるために各ブロック第2単
語以降のコードに対して後述するハフマン符号化技法を
用いて圧縮を行なわせた。
従って、以上の手順で圧縮された辞書の容量およびスペ
ルチェックのための平均探索時間は、ブロック長nと後
述するインデックスの構成即ち先頭何文字をインデック
スとするかによって変化する。そこで、この2つのパラ
メータをいくつか選び、そのパラメータにより実際に辞
書圧縮および辞書探索を行なわせ、圧縮辞書の容量と平
均辞書探索速度の関係を調べて目的にあった容量、速度
を得るパラメータを決定する。
インデックス部 前述の通り、この辞書で取扱う文字種は64種である。従
って先頭1文字をインデックスとすれば641=64個、先
頭2文字をインデックスとすれば642=4,096個、先頭3
文字をインデックスとすれば643=262,144個というよう
に先頭mの文字をインデックスとした場合64m個のイン
デックスステーブルを容易しなければならない。
しかしながら、辞書には2文字長の単語が登録されてい
るので、またインデックスを先頭3文字以上にすると辞
書の構造が複雑になり、mを大きくとると指数関数的に
インデックス部容量が増大するので、mは2以下に抑え
るものとする。また、mは大なる方がインデックスを絞
り込めるのでスペルチェック速度が高速となる。この様
なことを念頭におき、m=1およびm=2の場合につい
て、実験を行った結果、圧縮辞書容量とスペルチェック
速度の関係上m=2を採用することにした。
インデックステーブル参照の方法は、キーワードを第1
表に示す内部コード変換表に基づいて内部コードに変換
し、第1文字目に64の重みを与えた0〜4095のインデッ
クス値を作る。
(&&=0,&′=1,……,AA=80)この値よりインデッ
クステーブルのアドレスを計算して必要なインデックス
情報を得る。
インデックス情報は3つあり、第1はそのインデックス
に属する単語列の格納される辞書本体の先頭からのオフ
セット値で、第2はそのインデックスに収容されるブロ
ック数、そして第3は前述の通り辞書には2文字長の単
語が存在するので、そのインデックスに2文字長の単語
があるかどうかを示すフラグである(例えばABのインデ
ックスにABという2文字長の単語が存在するならばフラ
ッグは“on"となる)。実際には、イッデックス情報部
は第4図の構成であり、インデックステーブルはこの様
な情報が4096個で成り立っており、その1つ1つが0〜
4096のインデックス(値)に対応している。
第6図について、説明を加えるとオフセットは18ビット
であるため、最大218−1=262,143まで表わすことがで
きるが、今回の圧縮法ではオフセット値がこの値を超え
ることはない。また、ブロック数は5ビットで最大25
1=31までであるが、実際に圧縮を行った結果、現在の
辞書ではブロック長nが約256バイト以上あればブロッ
ク数が31を超えることはない。従って原辞書に変更があ
った場合や、ブロック長nを256よりも小さくとった場
合、また、辞書構造を変更した場合などには、注意が必
要である。
このようにして、インデックス部を構成するとインデッ
クス部容量は、4,096×3=12,288バイトとなる。この
ような構成のインデックス部を所有する辞書では、辞書
検索を行う際、次の2つの特別な場合のみ、辞書本体を
探索せずに速やかに該当単語の有無を判別することがで
きる。
i)キーワードのインデックス値が示すインデックス情
報のブロック数が0ならば、そのインデックスに登録さ
れている単語はない。即ち、キーワードは辞書に登録さ
れていない。
ii)キーワードが2文字長の単語であったならば、イン
デックス値が示すインデックス情報のフラグを調べてフ
ラグが“on"ならば該当する単語は辞書に登録されてい
る。また、フラグが“off"ならば登録されていない。
辞書本体部 辞書本体部は、インデックスに使用される先頭2文字を
除いた単語の集合で、ブロックを基本単位とした構成で
あり、各ブロックの先頭は必らずバイト境界である。ま
た、各ブロックの先頭第1単語は、ブロック単語の2分
探索を行なうため第7図で示される内部コード(第1表
参照)にフラグを付加したバイト単位の符号列である。
従ってブロックの先頭第1単語はEOW(End of Word)あ
るいばEOB(End of Block)のフラグが立つまでの符号
列で、もしEOBのフラグが“on"ならば、そのブロックに
はそれ以上単語が登録されていないということである。
それゆえこの様な符号列に対して上位2bitをマスクする
ことで容易に内部コードに復元できる。また、内部コー
ドは対応するアスキーコードの値を正順に配置している
ので、キーワードとの比較も単純な減算のみで行うこと
ができる。
ブロックの第2単語以降は、前述の64種類の文字と相対
圧縮符号及びEOW,EOBに対応するハフマンコードで構成
される。相対圧縮符号とは、1つ前の単語との先頭文字
からの共通部分の長さを示すコードで、インデックスの
ための先頭2文字を削除した後の共通部分が1文字なら
ば相対圧縮符号を用いる必要はないので2文字以上共通
部分があった場合に適用する(第8図参照)。第8図で
は、便宜上各符号を*4やEOWという形で表わしていた
が、実際にこれらの符号はハフマンコードとして記録さ
れている。このような方法で単語列の符号化圧縮を行な
うが、1つのインデックスに属する単語列(例えばイン
デックスAAならばAAで始まる単語)が符号化されていく
過程でその容量がブロック長nを超える可能性がある。
この場合、インデックス内で2分探索を行わせるために
ブロック長nを超えて格納されている単語は、次のブロ
ックの先頭第1単語として扱い(即ち相対圧縮をハフマ
ン符号化も行わない)そのブロックの終了としてのEOB
符号を格納する。そして次のブロックの先頭は必らずそ
のインデックスのオフセットの値にブロック長nの整数
倍を加えた値になるようにする。従ってこのようなイン
デックスには複数のブロックが存在することになるの
で、オフセット、ブロック数、ブロック長nが既知であ
るから、インデックス中の各ブロックの先頭第1単語に
対してブロック単位で2分探索法を試みることができ
る。2分探索法を行なうことでキーワードが登録されて
いると考えられるブロックを特定することができるの
で、そのブロックについてのみハフマンコードを復号
し、順次探索を行えばよい。ただしスペルチェックを行
なうキーワードが辞書に登録されていないものであれ
ば、探索の過程で間違ったハフマンコード展開をする可
能性があるので、各ブロックの最後には、EOWのかわり
にEOBを必ず記録する。このことにより、ハフマンコー
ド展開時(ブロック内探索時)EOB符号を検出しても尚
キーワードが見い出せなかったならばキーワードは辞書
に登録されていないので探索を打ち切る。
以上述べた辞書の構造を第9図に示す。
ハフマンコードの生成 ハフマンコードの使用については、圧縮を行なうデータ
である英単語辞書が既知であるためハフマン符号化法に
よる圧縮が効果的である。
ハフマンコードを割当てるにあたって各コードの出現頻
度を求めなければならないが、そのためのデータを作る
にはハフマンコードが決定して始めて完全な圧縮ができ
るので(何故ならハフマンコードは可変長ビット列であ
り辞書の圧縮に相対圧縮を利用しているので)、その上
で出現頻度がわかるという矛盾が生じるので、符号化に
対応するハフマンコードのコード長が全て8bitであるも
のとして実際に圧縮を行い、相対圧縮コードや相対圧縮
できなかった非圧縮文字そして単語間のセパレータコー
ドであるEOWと、ブロック終了コードであるEOBとの各コ
ードの出現頻度をもとにした(第2表及び第3表参
照)。
従って、第2表に示す出現頻度及び出現確率は正確なも
のでないが、統計的には真値からかけ離れた値になるこ
とはないので、このデータをもとにしてハフマンコード
を生成した。但し、ハフマンコードのコード長が8bitを
超えた場合、ハフマンコードの復号の処理が複雑になる
(後述する復号方法による変換テーブルの容量が膨大に
なるのを防ぐため)ので、出現頻度の比較的少ないコー
ドについて全てをまとめて“other"という特別なハフマ
ンコードを割当ることにより生成するハフマンコードの
最大コード長を8bitに押さえた。このotherコードは、
“other"に対応するハフマンコードに続けて6bitの文字
コードを付加するという形で拡張する。従って、このコ
ード系は純粋のハフマンコードではなく修正ハフマンコ
ードである。ハフマンコード変換表を第4表に示す。
ハフマンコード復号化のアルゴリズム 実際にスペルチェックを行う場合には、圧縮された辞書
を復号するという処理が必要となるが、ハフマンコード
は可変長ビット列であれため、復号の処理は複雑であ
る。例えば辞書中のデータを1ビットづつ取り出してハ
フマンコードとパターンマッチングを行ない一致しなけ
れば更に1ビット取出して1ビットシフトを行ない、キ
ーを詰めて再度パターンマッチングを行なうということ
を、キーがハフマンコードにマッチするまで繰り返すと
いうような方法で復号を行っていたので復号処理に要す
る時間的ロスが大きくスペルチェックとして役にたたな
い。
そこで辞書中のデータを8bit単位で取出し、この8bitの
データを0〜255の値とみなし、テーブル参照より取込
んだ16bitのデータ中実際にハフマンコードとして有効
なビット長、およびそのハフマンコードに割り付けられ
た内部コードを得る。そして有効ビット長だけ辞書の読
み込みポインターを進め、次の復号処理に備えるという
手順によってハフマンコードを復号する。このような復
号処理では、ハフマンコード展開に要する処理速度は、
高速となる反面、参照テーブルのためのエリアが必要と
なる。今回の修正ハフマンコードでは、ハフマンコード
の最大ビット長が8ビットになるように設けているので
参照テーブルの容量は、28×2バイト=512バイトとな
る(2バイトとは、有効ビツト長[3bit]および対応す
る内部コード[8bit]の情報を格納するエリアであ
る)。ところがotherコードに対応するハフマンコード
を展開した場合、辞書中よりさらに6bitの拡張コードを
得て、この拡張コードを変換テーブルにより内部コード
に変換しなければならない。このための変換テーブルの
容量は拡張コードに割当てられたコード数である49バイ
トである。
次にこの実施例における辞書検索機能を第10図a、及び
第10図bに示すフローチャートに従って説明する。
まず、ファイルあるいは入力装置より入力された文字列
から単語を切り出すことにより単語を抽出する(ステッ
プ20)。単語に付随する不要な文字を削減する(××
×′は×××に、×××′Sは×××にする)(ステッ
プ21)。探索する単語(以後キーワードと称す)の長さ
を判断し(ステップ22)、単語の長さが1文字ならば辞
書探索を行わず、検索を終了する(ステップ23)。単語
の長さが1文字でない場合、辞書探索が開始され(ステ
ップ24)、キーワードが辞書に登録されているかを判断
し(ステップ25)、登録されていなければ原単語の全て
の変化形について探索が行われ、検索を行う単語がなけ
れば探索を終了する(ステップ26,23)。ステップ26
で、全ての変化形についての探索が行われていない場
合、変化形(ABCの場合Abc、またはabcなどの変化形)
生成が行われ(ステップ27)再び辞書検索が行われる。
次に辞書検索の過程について説明する。まず、キーワー
ドの先頭2文字よりインデックスの値を算出する(ステ
ップ28)。そして、キーワードより先頭2文字を削除す
る。単語長が2文字であるか判断され(ステップ29)、
単語長が2文字の場合は、該当するインデックスの2文
字単語登録フラグをチェックすることにより(ステップ
30)、登録の有無が判別できる。該当するインデックス
の格納ブロック数が“0"とは、そのインデックスに格納
されている単語が無いということであるから(ステップ
31)探索を終了する。ブロック数が“0"でない場合は、
辞書本体での探索を行うため、キーワードを内部コード
に変換し(ステップ32)、探索の第1段階としてブロッ
ク単位での2分探索を行う(ステップ33)。2分探索を
行った段階で、キーワードを発見できたかを判断し、す
なわちキーワードが登録されていたかを判断し(ステッ
プ34)、登録されていなければ、キーワードの未登録が
判断される(ステップ35)。探索中に、キーワードと辞
書の単語の大きさを比較することにより以後の探索を行
っても登録されていないことが判別できる(辞書はアス
キー順に登録されているため)。以後、圧縮辞書の逐次
探索としての第2段階の探索を行う。圧縮された辞書本
体(修正ハフマンコード)より1単語ずつ単語を取り出
し、キーワードと比較するために、取り出した単語を内
部コードに変換する(ステップ36)。EOBを検出した場
合(ステップ37)、それ以上単語が登録されていないた
め探索を終了し、また、EOBが検出されていない場合
は、キーワードが登録されていたかを判断し(ステップ
38)、登録されていなければ、キーワードの未登録が判
断され(ステップ39)、未登録であれば探索を終了し、
未登録と判断されなければステップ36に戻る。
結 果 77,240の単語が登録されている辞書を用いてスペルチェ
ックを行ったところ、ブロック長n=256バイトで1単
語当りの平均スペルチェック速度は69msec/wordとなっ
た。また、辞書圧縮の容量は辞書本体で約182KB、イン
デックスと変換テーブルを含めると約195KBとなりスペ
ルチェックのプログラムも含めて2Mbit以内が可能とな
った。また、この処理速度をより早くするためにはハフ
マンコード復号にともなうビット演算処理をやめ、バイ
ト単位で圧縮を行えばブロック長n=256バイトで約27m
sec/wordとなる。
与えられた環境で前者を選ぶか後者をえらぶかを判断す
る。
(ト)発明の効果 この発明によれば、単語の文字発生頻度をハフマンコー
ドに編集し、かつ単語をブロック単位に分けて記憶して
いるため、スペルチェックとして使われる欧文用単語辞
書の記憶容量の削減を図ることができ、スペルチェック
の際の処理速度を速めることができる。
【図面の簡単な説明】
第1図はこの発明の構成を示すブロック図、第2図はこ
の発明の一実施例の構成を示すブロック図、第3図は同
じく圧縮辞書の構造を示す説明図、第4図は同じく単語
の相対圧縮を示す説明図、第5図は同じく辞書のブロッ
ク化を示す説明図、第6図は同じくインデックス情報部
の構成図、第7図は同じく先頭第1単語の符号列を示す
説明図、第8図は同じく相対圧縮符号を示す説明図、第
9図は同じく辞書構造を示す説明図、第10図a並びに第
10図bは実施例の作動を示すフローチャートである。 1……入力手段、2……記憶手段、 3……出力手段、4……制御手段、 5……圧縮辞書記憶手段、 6……スペルチェック手段。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】文字情報および各種の指示を入力する入力
    手段と、入力手段から入力された文字情報を記憶する記
    憶手段と、文字情報を表示する表示手段と、入力手段の
    指示に基づき記憶手段に記憶されている文字情報を表示
    手段に出力する制御手段と、nバイト毎に分割されたブ
    ロックを一単位として構成され、1つのブロックにその
    ブロックの先頭第1単語が所定コードに変換された非圧
    縮なバイト単位の文字列として格納され、かつ、先頭第
    1単語と関連のある第2単語を含むそれ以降の単語のお
    のおのが、その1つ前に格納された単語との共通部分を
    表す相対圧縮コードおよび相対圧縮ができなかった非圧
    縮コードを出現頻度を考慮して割り付けたハフマンコー
    ドに置換された情報として格納される辞書本体部と、辞
    書本体部の先頭からのオフセットと、同一の所定の文字
    列で始まる単語列が格納されるブロックの数とで構成さ
    れるインデックス部とからなる情報が記憶される圧縮辞
    書記憶手段と、キーワードの先頭2文字より圧縮辞書記
    憶手段のインデックス情報の格納されるアドレスを計算
    し、そのインデックスのオフセットおよびブロック数を
    取出し、ブロックの先頭第1単語についてブロック単位
    で2分検索を行うスペルチェック手段とを具備すること
    により、辞書容量の削減およびスペルチェックの処理速
    度を高めたことを特徴とする文字処理装置。
JP62128687A 1987-05-26 1987-05-26 文字処理装置 Expired - Lifetime JPH0682370B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP62128687A JPH0682370B2 (ja) 1987-05-26 1987-05-26 文字処理装置
DE3852341T DE3852341T2 (de) 1987-05-26 1988-05-24 Zeichenverarbeitungssystem mit Funktion zur Prüfung von Rechtschreibung.
EP88304675A EP0293161B1 (en) 1987-05-26 1988-05-24 Character processing system with spelling check function
US07/198,503 US4959785A (en) 1987-05-26 1988-05-25 Character processing system with spelling check function that utilizes condensed word storage and indexed retrieval

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62128687A JPH0682370B2 (ja) 1987-05-26 1987-05-26 文字処理装置

Publications (2)

Publication Number Publication Date
JPS63292365A JPS63292365A (ja) 1988-11-29
JPH0682370B2 true JPH0682370B2 (ja) 1994-10-19

Family

ID=14990940

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62128687A Expired - Lifetime JPH0682370B2 (ja) 1987-05-26 1987-05-26 文字処理装置

Country Status (4)

Country Link
US (1) US4959785A (ja)
EP (1) EP0293161B1 (ja)
JP (1) JPH0682370B2 (ja)
DE (1) DE3852341T2 (ja)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5297038A (en) * 1985-09-27 1994-03-22 Sharp Kabushiki Kaisha Electronic dictionary and method of codifying words therefor
US5258910A (en) * 1988-07-29 1993-11-02 Sharp Kabushiki Kaisha Text editor with memory for eliminating duplicate sentences
JPH0833806B2 (ja) * 1989-03-13 1996-03-29 富士通株式会社 データ処理装置における多国語変換処理方式
US5333313A (en) * 1990-10-22 1994-07-26 Franklin Electronic Publishers, Incorporated Method and apparatus for compressing a dictionary database by partitioning a master dictionary database into a plurality of functional parts and applying an optimum compression technique to each part
US5229936A (en) * 1991-01-04 1993-07-20 Franklin Electronic Publishers, Incorporated Device and method for the storage and retrieval of inflection information for electronic reference products
JPH0554077A (ja) * 1991-08-29 1993-03-05 Nec Corp 単語辞書検索装置
CA2051135C (en) * 1991-09-11 1996-05-07 Kim D. Letkeman Compressed language dictionary
US5357431A (en) * 1992-01-27 1994-10-18 Fujitsu Limited Character string retrieval system using index and unit for making the index
JP3189186B2 (ja) * 1992-03-23 2001-07-16 インターナショナル・ビジネス・マシーンズ・コーポレ−ション パターンに基づく翻訳装置
GB9311580D0 (en) * 1993-06-04 1993-07-21 Phonelink Data Limited Data retrieval system
JP3722231B2 (ja) * 1993-08-02 2005-11-30 ゼロックス コーポレイション コンパクトにエンコードされて記憶されたストリングの組を有する製品
US5724594A (en) * 1994-02-10 1998-03-03 Microsoft Corporation Method and system for automatically identifying morphological information from a machine-readable dictionary
JP2809341B2 (ja) 1994-11-18 1998-10-08 松下電器産業株式会社 情報要約方法、情報要約装置、重み付け方法、および文字放送受信装置。
JP3003915B2 (ja) * 1994-12-26 2000-01-31 シャープ株式会社 単語辞書検索装置
US5809494A (en) * 1995-11-16 1998-09-15 Applied Language Technologies, Inc. Method for rapidly and efficiently hashing records of large databases
GB9704951D0 (en) * 1997-03-11 1997-04-30 Philips Electronics Nv Message transmission system, a method of operating the message transmission system and a primary station therefor
JPH11143877A (ja) 1997-10-22 1999-05-28 Internatl Business Mach Corp <Ibm> 圧縮方法、辞書の見出し語インデックス・データを圧縮するための方法、及び機械翻訳システム
US6298321B1 (en) * 1998-11-23 2001-10-02 Microsoft Corporation Trie compression using substates and utilizing pointers to replace or merge identical, reordered states
US6304878B1 (en) 1998-11-23 2001-10-16 Microsoft Corporation Method and system for improved enumeration of tries
US6473621B1 (en) * 1999-05-28 2002-10-29 Nokia Inc. Method and apparatus for entering shortcut messages
US6675169B1 (en) 1999-09-07 2004-01-06 Microsoft Corporation Method and system for attaching information to words of a trie
US7039496B2 (en) * 2000-12-11 2006-05-02 United Parcel Services Of America, Inc. Compression utility for use with smart label printing and pre-loading
US7667630B2 (en) * 2004-12-07 2010-02-23 Nippon Telegraph And Telephone Corporation Information compression-encoding device, its decoding device, method thereof, program thereof, and recording medium storing the program
US8515468B2 (en) 2005-09-21 2013-08-20 Buckyball Mobile Inc Calculation of higher-order data from context data
US8489132B2 (en) * 2005-09-21 2013-07-16 Buckyball Mobile Inc. Context-enriched microblog posting
US7580719B2 (en) * 2005-09-21 2009-08-25 U Owe Me, Inc SMS+: short message service plus context support for social obligations
US8275399B2 (en) * 2005-09-21 2012-09-25 Buckyball Mobile Inc. Dynamic context-data tag cloud
US9166823B2 (en) * 2005-09-21 2015-10-20 U Owe Me, Inc. Generation of a context-enriched message including a message component and a contextual attribute
US8509827B2 (en) * 2005-09-21 2013-08-13 Buckyball Mobile Inc. Methods and apparatus of context-data acquisition and ranking
US8509826B2 (en) * 2005-09-21 2013-08-13 Buckyball Mobile Inc Biosensor measurements included in the association of context data with a text message
US7551935B2 (en) 2005-09-21 2009-06-23 U Owe Me, Inc. SMS+4D: short message service plus 4-dimensional context
US9042921B2 (en) * 2005-09-21 2015-05-26 Buckyball Mobile Inc. Association of context data with a voice-message component
JP4398988B2 (ja) * 2007-03-26 2010-01-13 株式会社東芝 構造化文書を管理する装置、方法およびプログラム
CN101697116B (zh) * 2009-10-27 2011-11-09 飞天诚信科技股份有限公司 数据变换方法及装置
US8489131B2 (en) * 2009-12-21 2013-07-16 Buckyball Mobile Inc. Smart device configured to determine higher-order context data
US10127219B2 (en) * 2016-12-09 2018-11-13 Hong Kong Applied Science and Technoloy Research Institute Company Limited System and method for organizing and processing feature based data structures
CN112527949B (zh) * 2020-12-15 2023-01-13 建信金融科技有限责任公司 数据存储与检索方法、装置、计算机设备及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4748589A (en) * 1979-09-06 1988-05-31 Sharp Kabushiki Kaisha Electronic translator
US4381551A (en) * 1979-09-13 1983-04-26 Sharp Kabushiki Kaisha Electronic translator
JPS59868B2 (ja) * 1979-10-24 1984-01-09 シャープ株式会社 単語の基本形認識装置およびこれを用いた翻訳装置
US4393462A (en) * 1979-10-24 1983-07-12 Sharp Kabushiki Kaisha Electronic translator with means for pronouncing input words and translated words
JPS6017564A (ja) * 1983-07-08 1985-01-29 Brother Ind Ltd 電子辞書
US4747053A (en) * 1985-05-20 1988-05-24 Brother Kogyo Kabushiki Kaisha Electronic dictionary
US4758955A (en) * 1985-07-19 1988-07-19 Carson Chen Hand-held spelling checker and method for reducing redundant information in the storage of textural material
US4782464A (en) * 1985-12-26 1988-11-01 Smith Corona Corporation Compact spelling-check dictionary

Also Published As

Publication number Publication date
DE3852341T2 (de) 1995-06-01
EP0293161A2 (en) 1988-11-30
EP0293161A3 (en) 1990-06-27
DE3852341D1 (de) 1995-01-19
US4959785A (en) 1990-09-25
JPS63292365A (ja) 1988-11-29
EP0293161B1 (en) 1994-12-07

Similar Documents

Publication Publication Date Title
JPH0682370B2 (ja) 文字処理装置
JP3889762B2 (ja) データ圧縮方法、プログラム及び装置
CN108768403B (zh) 基于lzw的无损数据压缩、解压方法及lzw编码器、解码器
EP0083393B1 (en) Method of compressing information and an apparatus for compressing english text
JP3974036B2 (ja) ハフマン・デコーディングを実施する方法
JP4003854B2 (ja) データ圧縮装置及び復元装置並びにその方法
JP2000516058A (ja) 頻度の高いキャラクタの組み合わせ、ワード及び/又はフレーズでプレフィルした辞書を用いるLempel―Zivデータ圧縮技術
KR970059917A (ko) 데이타압축, 신장방법 및 장치와 이것을 사용한 데이타처리장치 및 네트워크시스템
JP2007508753A (ja) データ圧縮システム及び方法
JP2007508753A5 (ja)
EP0127815B1 (en) Data compression method
JP3231105B2 (ja) データ符号化方式及びデータ復元方式
US5815096A (en) Method for compressing sequential data into compression symbols using double-indirect indexing into a dictionary data structure
KR100906041B1 (ko) 폰트 압축 및 검색 방법 및 장치
US20090083267A1 (en) Method and System for Compressing Data
Cannane et al. A compression scheme for large databases
JP3241787B2 (ja) データ圧縮方式
JPH0554077A (ja) 単語辞書検索装置
JPH0546357A (ja) テキストデータの圧縮方法および復元方法
JPH0546358A (ja) テキストデータの圧縮方法
JP3130324B2 (ja) データ圧縮方式
JP2006302082A (ja) 文字列検索装置
JP3384844B2 (ja) データ圧縮方法および装置並びにデータ復元方法および装置
JP3565147B2 (ja) 復号装置
JPH0969785A (ja) データ圧縮方法及びデータ圧縮装置