(57)【特許請求の範囲】
【請求項１】
日本語を構成し得る文字からなる文章を校正する文章校正装置であって、
前記文章から文字を順次入力する入力手段と、
該入力した文字から、１バイト文字もしくは２バイト文字としてのカタカナまたは英文字のいずれか一方が連続した文字列を単語として切り出す単語切り出し手段と、
該切り出された単語を構成する各文字を、１バイト文字または２バイト文字のうち、異なる種類の文字に変換する文字種変換手段と、
該文字種変換手段より変換された文字列が、前記文章において既出か否かを判断する変換文字列判定手段と、
該変換文字列判定手段により、前記単語が前記文章において既出であると判断された場合には、警告を出力する警告出力手段と
を備えた文章校正装置。
【請求項２】
請求項２に記載の文章校正装置であって、
更に、
前記入力手段により入力された文字の連続が、連続する改行の組み合わせ、改行とこれに続くスペースの組み合わせ、あるいは句点とこれに続く改行の組み合わせの内のいずれかに該当するとき、これを検出する検出手段と、
該検出手段により前記文字の連続が前記組み合わせのいずれかに該当することが検出されたとき、これを文末と判断する文末判断手段と、
前記文末判断手段により文末と判断される箇所以外では、少なくとも改行を除いて、前記入力手段による文字の入力を連続的に行なわせる連続入力手段と
を備えた文章校正装置。
【請求項３】
日本語を構成し得る文字からなる文章を校正する文章校正方法であって、
前記文章から文字を順次入力し、
該入力した文字から、１バイト文字もしくは２バイト文字としてのカタカナまたは英文字のいずれか一方が連続した文字列を単語として切り出し、
該切り出された単語を構成する各文字を、１バイト文字または２バイト文字のうち、異なる種類の文字に変換し、
該変換された文字列が、前記文章において既出か否かを判断し、
該単語が前記文章において既出であると判断された場合には、警告を出力する
文章校正方法。
【請求項４】
請求項３に記載の文章校正方法であって、
更に、
前記入力された文字の連続が、連続する改行の組み合わせ、改行とこれに続くスペースの組み合わせ、あるいは句点とこれに続く改行の組み合わせの内のいずれかに該当するとき、これを検出し、
前記文字の連続が前記組み合わせのいずれかに該当することが検出されたとき、これを文末と判断し、
該文末と判断される箇所以外では、少なくとも改行を除いて、前記文字の入力を連続的に行なわせる
文章校正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文章校正装置およびその方法に関し、特に、日本語を構成し得る文字からなる文章を校正する文章校正装置およびその方法に関する。
【背景技術】
【０００２】
従来、この種の文章校正装置では、作成文書の種類や目的に応じて、文章を校正するための様々な機能が提案されている。最近では、表記の統一、文末の表現の統一などを図るために、不適切な表現や組み合わせに対して警告を表示し、装置の使用者に対して修正を促す機能を搭載するものも多い。例えば、表記の統一を図る機能としては、文章中の記号、英字、カナ文字、数字について全角文字／半角文字といった文字種を予め設定しておき、読み出した文字列が該設定と異なる場合に、これを表示するものがある。また、文末の表現の統一を図る機能としては、使用者の設定に従って、各文末が「〜である」のような常体または「〜です」のような敬体のいずれであるかを識別し、該設定と異なる場合に訂正候補を表示するものが提案されている。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、こうした文章校正装置は、予め登録した単語の誤りや文体の不統一、あるいは予め登録しておいた同音異義語や異字体などについては校正の対象とすることはできるが、未登録の単語については、日本語の表記として誤用と考えられても校正の対象とするいったことはできないという問題があった。従って、こうした未登録の単語の場合には、本来校正より正すべき多くの表記を見逃してしまう可能性があった。例えば、日本語の表記の中で、長音記号とマイナス記号は、時に誤って用いられることがあるが、外来語などで長音記号を伴う単語をすべて登録しておいて校正の対象とすると、膨大な記憶容量が必要となってしまう。しかも、登録されていない新たな外来語などは校正の対象とすることができない。更に、英単語の中に長音記号が混じって使われる場合なども校正の対象とはならなかった。
【０００４】
こうした問題は、特にＯＣＲ（光学的文字読み取り機）が普及し、日本語文書をＯＣＲで読み取った場合の校正などでは看過することができない。ＯＣＲで読み取った場合には、本来長音記号となるべきところがマイナス記号として読み取られてしまうことも少なくないからである。このような場合に、従来の校正装置では、文章中における長音及びマイナス記号を全角あるいは半角のいずれにより表記するかを予め定めておいて、これを識別、判定できるにとどまり、長音記号とマイナス記号の相互間における誤用を指摘する事ができなかった。また、同じ表記が、ＯＣＲにより、一方は全角文字（２バイト文字）として、他方が半角文字（１バイト文字）として読み取られる場合もあり得るが、こうした場合の校正も従来は行なわれていなかった。
【０００５】
その理由として、長音記号とマイナス記号の使い分けについての考察が不十分であり、校正として使用できるルールが知られていなかったこと、及び、日本語には全角文字と半角文字という２種類の文字が存在し、これらが長音記号、マイナス記号と混在する場合のルールについても検討されていなかったこと、等を挙げることができる。
【０００６】
そこで、本発明の文章校正装置は、日本語表記として誤用と考えられる文字列の並びを検出する手法を見いだすことを目的としてなされ、特に文中における長音記号とマイナス記号の使い方やカタカナあるいは英数字が連続する場合の表記の統一等を校正の対象にすることを目的としてなされた。
【課題を解決するための手段】
【０００７】
本発明の第１の文章校正装置は、
日本語を構成し得る文字からなる文章を校正する文章校正装置であって、
前記文章から文字を順次入力する入力手段と、
該入力した文字から、１バイト文字もしくは２バイト文字としてのカタカナまたは英数字のいずれか一方が連続した文字列を単語として切り出す単語切り出し手段と、
該切り出された単語を構成する各文字を、１バイト文字または２バイト文字のうち、異なる種類の文字に変換する文字種変換手段と、
該文字種変換手段より変換された文字列が、前記文章において既出か否かを判断する変換文字列判定手段と、
該変換文字列判定手段により、前記単語が前記文章において既出であると判断された場合には、警告を出力する警告出力手段とを備えたことを要旨とする。
【０００８】
この文章校正装置に対応する第１の文章校正方法は、
日本語を構成し得る文字からなる文章を校正する文章校正方法であって、
前記文章から文字を順次入力し、
該入力した文字から、１バイト文字もしくは２バイト文字としてのカタカナまたは英数字のいずれか一方が連続した文字列を単語として切り出し、
該切り出された単語を構成する各文字を、１バイト文字または２バイト文字のうち、異なる種類の文字に変換し、
該変換された文字列が、前記文章において既出か否かを判断し、
該単語が前記文章において既出であると判断された場合には、警告を出力すること
を要旨としている。
【０００９】
上記構成を有する第１の文章校正装置および第１の文章校正方法は、所定の入力手段により入力された文字が、カタカナ文字の連続もしくは英数字の連続であるか否かを判断し、これらの文字の連続である場合には、該連続した文字列を１つの単語として切り出す。切り出されたその単語が、１バイト文字からなる文字列である場合には２バイト文字からなる文字列に、２バイト文字からなる文字列である場合には１バイト文字からなる文字列に、それぞれ文字種を変換し、バイト数の異なる単語を生成する。その上で、文字種変換により生成された単語の文字列が、校正の対象としている文章において既出か否かを判断し、該文字列が既出である場合には、既出文字列と入力された文字列の文字種が異なるとして、警告を出力し、使用者に対し修正を促す。この場合、既出であるか否かの判断手法には、例えば、文章中において最初に使用された単語を既出単語として主記憶あるいは外部記憶装置に記憶しておき、これを基準として判断することなどが考えられる。
【００１０】
かかる第１の文章校正装置および第１の文章校正方法では、カタカナ文字または英数字から構成される単語であって使用者が所望する文字種のものを予め辞書に登録しておくことなく、同一文章内における該単語の文字種の不統一を検出することができる。従って、辞書等において膨大な記憶容量を確保する必要がない。さらに、本発明によれば、単語毎の文字種不統一を検出することができるから、異なる単語についての異なる文字種の採用を許容することが可能となった。従来は、例えばカタカナ文字は２バイト文字とすると予め定めておき、これと異なる文字列（例えば１バイト文字のカタカナ文字列）を文字種が不統一であるとして検出できるに過ぎず、校正の対象となる単語毎に文字種統一の基準を変えることはできなかった。これによって、使用者の用字の多様なパターンに対応した校正を行なうことが可能となった。また、校正の対象が、未登録の単語や数字等のように単語としては観念しにくいものであっても、文字種の不統一を検出することができる。
【００１１】
本発明の第２の文章校正装置は、
日本語を構成し得る文字からなる文章を校正する文章校正装置であって、
前記文章から文字を順次入力する入力手段と、
該入力した文字が、長音記号またはマイナス記号のいずれかの種別に該当するかを判断する記号判断手段と、
該記号判断手段により、該入力された文字が長音記号またはマイナス記号に該当すると判断されたとき、該記号の前の文字の種類を判断する文字種判断手段と、
該文字種判断手段により判断された文字種と前記記号判断手段により判断された記号の種別との組み合わせの妥当性を判断する妥当性判断手段と、
該妥当性判断手段により、該組み合わせの妥当性が不適切と判断された場合には、警告を出力する警告出力手段とを備えることを要旨とする。
【００１２】
また、この文章校正装置に対応した第２の文章校正方法は、
日本語を構成し得る文字からなる文章を校正する文章校正方法であって、
文字を入力し、
該入力した文字が、長音記号またはマイナス記号のいずれかの種別に該当するかを判断し、
該入力された文字が長音記号またはマイナス記号に該当すると判断されたとき、該記号の前の文字の種類を判断し、
該判断された文字種と判断された記号の種別との組み合わせの妥当性を判断し、
該組み合わせの妥当性が不適切と判断された場合には、警告を出力することを要旨とする。
【００１３】
上記構成を有する本発明の第２の文章校正装置および第２の文章校正方法は、校正の際に、日本語を構成し得る文字からなる文章から入力された文字が、長音記号またはマイナス記号のいずれかの種別に該当すると判断された場合には、更にその前の文字の種類を判断し、両者の組み合わせの妥当性について判断する。妥当性の判断は、長音記号またはマイナス記号と、その前の文字との組み合わせの規則に基づいて、行なわれる。両者の組み合わせが不適切である場合には、警告を出力し、使用者に対し修正を促す。
【００１４】
従って、本発明の第２の文章校正装置および第２の文章校正方法では、長音記号およびマイナス記号を含む単語を予め辞書に登録しておくことなく、該記号の誤用を検出することができる。従って、辞書等において膨大な記憶容量を確保する必要がなく、また、校正の対象が、未登録の単語や英字を用いた数式等のように単語とは観念しにくいものであっても、両記号の誤用を検出することができる。
【００１５】
なお、警告出力手段は、例えば、ＣＲＴ画面へメッセージを出力するといった構成を考えることができるが、ファイルやプリンタ等に出力してもよく、また単に警告するだけでなく、あり得る訂正候補を選択可能な形態で伴う構成など、種々の対応を考えることができる。
【００１６】
また、該記号の前において判断、識別される文字の種類としては、少なくとも、仮名文字を考えることができ、長音記号の前の文字が仮名文字以外である場合及びマイナス記号の前の文字が仮名文字である場合に、組み合わせを不適当とすることを考えることができる。これらが、両記号に付随してかつ組み合わせて用いられる蓋然性が高い文字種であり、広く両記号の誤用を検出できることになるからである。
【００１７】
さらに、該装置及び方法では、該記号及び該記号の前の文字が全角／半角のいずれであるかをも識別し、該記号及び該記号の前の文字種の組み合わせが適当であっても、該記号及び該記号の前の文字の全角／半角が不一致である場合には、組み合わせを不適当とすることができる。例えば、「Ａ-Ｂ」や「A−Ｂ」等の組み合わせも不適当とするのである。この場合には、長音記号やマイナス記号を予め全角／半角のいずれかに指定しておく必要がなく、長音記号またはマイナス記号を含む単語について、該単語を構成する文字及び記号の全角／半角の不統一を検出することができる。
【００１８】
さらに、上記の第１，第２の文章校正装置および第１，第２の文章校正方法において、入力された文字の連続が、連続する改行の組み合わせ、改行とこれに続くスペースの組み合わせ、あるいは句点とこれに続く改行の組み合わせ内のいずれかに該当するとき、これを文末と判断し、文末と判断される箇所以外では、少なくとも改行を除いて、文字の入力を連続的に行なわせる構成も好適である。
【００１９】
通常、日本語の文章は、句点（「。」または「．」）により完了するが、句点がなく単に改行のみが置かれて完結する文も存在する。しかし、行単位で文章を扱うエディタにより作成された文章やパソコン通信などの通信により受け取られた文章では、各行の末尾に改行コードが挿入されている場合が存在するから、単純に、句点まで、または改行コードまでを文末をみなすという処理では、文末を正しく判定することができない。これに対して上記の構成を備えることにより、改行のある行末が文末であるかを正しく判定することができ、文末以外では文字を連続的に入力させ、途中に改行が存在する場合でも、校正の対象として扱うことができる。
【００２０】
この発明は、以下のような他の態様も含んでいる。第１の態様は、日本語を構成し得る文字からなる文章を校正する文章校正装置を実現するプログラムを記録した媒体であって、
前記文章から文字を順次入力する入力処理と、
該入力した文字が、長音記号またはマイナス記号のいずれかの種別に該当するかを判断する記号判断処理と、
該記号判断処理により、該入力された文字が長音記号またはマイナス記号に該当すると判断されたとき、該記号の前の文字の種類を判断する文字種判断処理と、
該文字種判断処理により判断された文字種と前記記号判断処理により判断され  た記号の種別との組み合わせの妥当性を判断する妥当性判断処理と、
該妥当性判断処理により、該組み合わせの妥当性が不適切と判断された場合には、警告を出力する警告出力処理と
をコンピュータにより読み取り可能または実行可能に記録した記録媒体などである。
【００２１】
この媒体は、コンピュータのフレキシブルディスク装置や光磁気ディスク装置などに装着され、磁気的な手段や光学的な手段により記録したプログラムをコンピュータのメモリに転送することにより、コンピュータにおける文章校正機能を実現するものである。
【００２２】
第２の態様は、コンピュータのメモリにロードされ、コンピュータシステムのマイクロプロセッサによって実行されることにより、日本語を構成し得る文字からなる文章を校正する文章校正装置を実現するプログラムを通信回線を介して供給する装置としての構成である。
【発明を実施するための最良の形態】
【００２３】
以上説明した本発明の構成及び作用を一層明らかにするために、以下本発明の実施の形態を実施例に基づき説明する。図１は、本発明の好適な実施例である文章校正装置のハードウェアの構成を示すブロック図である。図１に示すように、この文章校正装置は、予め設定されたプログラムに従って各種演算処理を実行するＣＰＵ２１を中心に、バス３１により相互に接続された次の各部を備える。ＲＯＭ２２は、ＣＰＵ２１で各種演算処理を実行するのに必要な文章校正装置に関わるプログラムやデータを予め格納しており、ＲＡＭ２３は、同じくＣＰＵ２１で各種演算処理を実行するのに必要な文章校正装置に関わる各種データが一時的に読み書きされるメモリである。キーボードインターフェイス２５は、キーボード２４からのキー信号の処理を司り、ＣＲＴＣ２７は、カラー表示可能なＣＲＴ２６への信号出力を制御し、プリンタインターフェイス２９は、プリンタ２８へのデータの出力を制御する。ハードディスクコントローラ（ＨＤＣ）３０は、ハードディスク３２を制御するものであり、このハードディスク３２には、ＲＡＭ２３にロードされて実行される文章校正処理プログラムなどの各種プログラムや、各種変換辞書などが記憶されている。
【００２４】
上記のハードウェアにより、入力された文章の校正の他に、文字列の入力、仮名漢字変換、編集、表示、印刷などがなされる。これらの処理は、基本的には、キーボード２４からかな文字列を入力し、これをハードディスク３２に記憶した辞書群を参照することで漢字仮名混じり文に変換し文章を作成してゆく処理およびキーボード２４からの入力に従って、入力済みの文章を編集してゆく処理である。これらの処理については、詳細な説明は省略する。なお、本実施例では、作成された文章は、ＲＡＭ２３の所定領域に格納され、ＣＲＴＣ２７を介し、ＣＲＴ２６の画面上に表示される。
【００２５】
次に、上記構成のハードウェアにより実行される文章校正処理の詳細について説明する。校正の対象となる文章は、ＲＡＭ２３の所定の領域に格納されているものとする。ここで、キーボード２４から、この文章に対する校正の実行を指示するキー操作がなされたとき、ＣＰＵ２１の命令によりハードディスク３２に格納された文章校正プログラムがＲＡＭ２３上にロードされ、実行可能な状態となる。
【００２６】
文章校正プログラムの概要について説明する。図２は、文章校正装置における一般的な文章校正処理を示すフローチャートである。この文章校正処理が、起動されると、まず使用者が希望する校正機能を指定する処理が行なわれる（ステップＳ１００）。この処理により、校正内容が確定されるのである。例えば、誤字脱字の校正、カタカナまたは英字等の文字種の統一、読みやすさの評価、表記のゆれのチェック等の指定が行なわれる。次に、希望する校正範囲をキーボード２４において指定することにより、校正対象を特定する処理が行なわれる（ステップＳ１１０）。校正対象は、文章全体を指定することもできるし、選択範囲とすることもできるし、現在カーソル（キャレット）が存在する位置から文頭まであるいは文末までとすることもできる。更には、段落を単位として指定することも可能である。
【００２７】
次に、ステップＳ１１０で特定された校正対象から文字列を順次読み込み（ステップＳ１２０）、入力されたその文字列に対して、ステップＳ１００で確定した校正の処理を実行し（ステップＳ１３０）、校正結果を修正候補とともにＣＲＴ２６の画面上に表示する処理を行なう（ステップＳ１４０）。なお、追加の校正処理の要求があれば、ステップＳ１００に戻って上述した処理を繰り返す。
【００２８】
以上、校正処理全体の流れについて説明した。次に、本実施例特有の処理の全体構造について説明する。図３は、図２の各処理ルーチンの中の校正処理、表示処理について、本実施例の文章校正装置に特有の処理の全体構造を示すブロック図である。本実施例の文章校正装置は、図示するように、一文獲得モジュール４０，日本語解析モジュール５０，誤字・脱字検出モジュール５５，長音記号／マイナス記号用法判定モジュール６０，カタカナ単語表記判定モジュール７０，英文字単語表記判定モジュール８０，検出結果表示モジュール９０を備える。
【００２９】
一文獲得モジュール４０は、校正対象となる文章の文末位置を判定することにより一文の単位で文字列を獲得する処理を行なうモジュールである。日本語解析モジュール５０は、ハードディスク３２に格納された辞書ファイルを参照して、一文獲得モジュール４０により獲得した一文を日本語としての妥当性の観点から解析するモジュールである。誤字・脱字検出モジュール５５は、辞書ファイルを参照して行なわれた日本語解析の結果を利用して、誤字脱字を検出するモジュールである。例えば、漢字数文字からなる熟語が、辞書ファイルに見いだせない場合には、一部の文字が異なる熟語があるかを検索し、一部も漢字のみが異なる熟語が見いだされた場合には、誤字と判断したり、一文の漢字が脱落していると見なせる熟語が見いだされた場合には、脱字と判断するのである。
【００３０】
更に、長音記号／マイナス記号用法判定モジュール６０は、日本語文の中で用いられる長音記号「ー」とマイナス記号「−」の使用の適切さを判断するモジュールである。また、カタカナ単語表記判定モジュール７０は、カタカナで表記される単語の表記の統一などを判定するモジュールである。更に、英文字単語表記判定モジュール８０は、英文字からなる単語の表記の統一などを判定するモジュールである。これらのモジュールの詳細は、後述する。検出結果表示モジュール９０は、上記のいくつかのモジュールにより判定された日本語文としての妥当性の判断結果を表示するモジュールであり、実際には校正結果を一覧するウィンドウと、校正結果に対する修正候補を提示するウィンドウとを表示する処理を、併せ行なうモジュールである。
【００３１】
各モジュールの機能を中心に、本実施例に特徴的な処理の概要を説明する。まず、一文獲得モジュール４０における処理について、図４のフローチャートを参照しつつ説明する。一文獲得モジュール４０は、日本語の文章を構成する最小単位である文を的確に切り出して、長音記号／マイナス記号用法判定モジュール６０などの校正用モジュールに供給するものである。通常、日本語の文章は、句点（「。」または「．」）により完了するが、句点がなく単に改行のみが置かれて完結する文も存在する。しかし、行単位で文章を扱うエディタにより作成された文章やパソコン通信などの通信により受け取られた文章では、各行の末尾に改行コードが挿入されている場合が存在するから、単純に、句点まで、または改行コードまでを文末をみなすという処理では、一文を正しく獲得することはできない。本実施例の一文獲得モジュール４０では、以下の処理により改行が存在する場合の文末の判定を行なって、一文を正確に獲得している。なお、改行が存在しない範囲において、句点から句点までを一文として切り出す処理は、従来から行なわれているのでここでは説明しない。
【００３２】
図４に示した一文獲得処理ルーチンが起動されると、まず、校正対象となる文章から、一行文の文字列が獲得される（ステップＳ２００）。次に、獲得された行（以下、獲得行と呼ぶ）の前行末尾に改行コードが存在するか否かを判定する処理を行なう（ステップＳ２１０）。前行末尾に改行コードが存在するか否かは、前行についての処理において判定し、フラグの形式で保存されている（後述）。したがって、ここでフラグを参照することにより、容易に、前行に改行コードが存在したかを判定することができる。獲得行の前行に改行コードが存在すると判定された場合には、本行の行頭の文字コードをチェックし、行頭が空白（全角スペースまたは半角スペース）または改行コードであるか否かを判定する処理を行なう（ステップＳ２２０、Ｓ２３０）。行頭が改行コードである場合、または空白である場合には、前行は文末であったと判定する（ステップＳ２４０）。ここで、行頭が空白である場合には、獲得行に文字列が存在するものの、獲得行の前行の行末には改行コードが存在し、これに続く行の先頭に空白が存在することから、両行にまたがって文字が連続していることはないと判断し、前行は文末であったと判定するのである。この場合には、前行までの文字列を一文として切り出し、これを校正用のモジュールに出力する処理を行なう（ステップＳ２４５）。
【００３３】
また、一行を獲得した後（ステップＳ２００）、その前行に改行コードが存在しないと判断された場合（ステップＳ２１０）、あるいは前行に改行コードは存在するが、獲得行の先頭には空白も改行コードも存在しないと判断された場合には（ステップＳ２１０ないし２３０）、次に獲得行に改行コードが存在するか否かを判定する処理を行なう（ステップＳ２５０）。獲得行に改行コードが存在する場合には、更に改行コードの前に位置する文字が句点であるか否かを判定する（ステップＳ２６０）。改行コードの前に位置する文字が句点である場合には、獲得行においてはこの行に存在する改行位置が文末であると判定する（ステップＳ２７０）。この場合には、獲得行の行末までを、それまで入力してきた文字列の末尾に加え、全体を一文として出力する処理を行なう（ステップＳ２７５）。
【００３４】
一方、獲得行に改行コードが存在しない場合（ステップＳ２５０）や、獲得行の末尾の改行コードの前が句点でない場合には（ステップＳ２６０）、獲得行には文末が存在しないと判定し、その行の文字列を改行コードを除いて、一文として切り出そうとしている文字列の末尾に加える処理を行なう（ステップＳ２８０）。これらの処理の後、校正対象内の全行の解析が完了しているかを判断し（ステップＳ２９０）、完了していなければ、１行の獲得（ステップＳ２００）から、以上の処理を繰り返す。全行についての解析が完了したと判断された場合には、ステップＳ２８０により付加した残余の行が残っていれば、これを一文として出力する処理を行なった後（ステップＳ２９５）、本ルーチンを終了する。
【００３５】
以上の処理により、改行コードが存在する行における文末判定が正しくなされ、行単位で編集を行なうエディタで編集された文章のように各行に改行コードが挿入されている文章であっても、文末でない改行コードは除いて、一文が切り出され、校正モジュールに引き渡されることになる。例えば、図５に示す例では、各行の末尾に改行コード（図示符号「▽」）が挿入されているが、
（１）改行コードの次の行頭に空白が存在する場合に文末と判断して（ステップＳ２１０，Ｓ２２０，Ｓ２４０）、それまでの文字列（Ａ）を一文として切り出し（ステップＳ２４５）、
（２）改行コードが連続する場合に文末と判断して（ステップＳ２１０〜Ｓ２４０）、それまでの文字列（Ｂ）を一文として切り出し（ステップＳ２４５）、
（３）改行コードの前の文字が句点の場合には文末判断して（ステップＳ２１０，Ｓ２５０〜Ｓ２７０）、それまでの文字列（Ｃ）を一文として切り出す（ステップＳ２７５）
ことになる。
【００３６】
即ち、本実施例の文章校正装置では、改行コードの位置を一律に文末位置とみなすのではなく、改行コードの存在に加えて、行頭及び改行コード前の位置を参照して文末判定を行なっている。従って、パソコン通信等から入力された文章を校正する場合であっても、真の文末位置を判定することができる。この結果、行末に形式上の改行コードが存在しても、前行の行末から次行頭にかけて連続した文字列については、連続した文字列として正しく判断されることになる。なお、本実施例では、文末でないと判断された行末の改行コードを除いているが、文末でないと判断された行の次の行の先頭にスペースが位置する場合、これを除くことも可能である。文章によっては、インデントのためにスペースを行頭に１もしくは複数個配置する場合がある。したがって、こうした場合には、行頭のスペースを除いて文字列を構成することが望ましい。
【００３７】
以上説明した一文獲得モジュール４０により出力された一文を受け取って、長音記号とマイナス記号の用法の妥当性について判断する長音記号／マイナス記号用法判定モジュール６０の構成と働きの詳細について、次に説明する。図６は、長音記号／マイナス記号用法判定モジュール６０（図３）における処理の概略を示すフローチャートである。長音記号／マイナス記号用法判定モジュール６０は、上述した文末判定ルーチンにより切り出された一文を受け取ると、その一文の先頭を解析位置とした上で、図６に示した長音記号／マイナス記号用法判定ルーチンを実行する。この処理が開始されると、設定された解析位置に存在する文字が長音記号またはマイナス記号のいずれかであるか否かを判定する処理を行なう（ステップＳ３００、Ｓ３０５）。ステップＳ３００、Ｓ３０５において、該両記号のいずれにも該当しない場合には、解析位置を１文字分進め（ステップＳ３７０）、受け取った一文の全語についての解析が完了するまでは、ステップＳ３００に、処理を繰り返す。
【００３８】
他方、ステップＳ３００、Ｓ３０５の判定により、解析位置の文字が長音記号またはマイナス記号であると判定された場合には、解析位置を１文字前に戻し（ステップＳ３１０、Ｓ３１５）、長音記号またはマイナス記号とその１文字前の文字とが、全角または半角文字として一致しているかを判断する（ステップＳ３２０，Ｓ３２５）。即ち、長音記号またはマイナス記号が全角の場合にはその前の文字も全角であるかどうか、あるいは長音記号またはマイナス記号が半角の場合にはその前の文字も半角であるかどうかを判定するのである。長音記号またはマイナス記号とそれらの記号前の文字の全角／半角が一致していない場合には、文字種不統一と判定し、判定結果を検出結果表示モジュール９０に出力する処理を行なう（ステップＳ３３０）。
【００３９】
他方、長音記号またはマイナス記号とその記号の前の文字の全角／半角が一致していると判断された場合には（ステップＳ３２０またはＳ３２５）、次に解析位置に存在する文字（この時点では長音記号またはマイナス記号の一つ前の文字）が仮名文字であるか否かを判定する（ステップＳ３４０、Ｓ３４５）。長音記号の前の文字が仮名文字でないと判定されるケースは、「漢字」＋「ー」、「英数字」＋「ー」、「記号」＋「ー」のように、長音記号とその前の文字からみて長音記号の不適切な用法であると判断し、判定結果を検出結果表示モジュール９０に出力する（ステップＳ３５０）。また、マイナス記号の前の文字が仮名文字であると判断された場合には（ステップＳ３０５，Ｓ３４５）、「かな」+「−」という文字列が存在することになるから、これはマイナス記号の不適切な用法であると判断し、判定結果を検出結果表示モジュール９０に出力する（ステップＳＳ３５５）。
【００４０】
その後、ステップＳ３１０，Ｓ３１５で１文字分戻した解析位置を元に戻すべく、解析位置を１文字進める処理を行ない（ステップＳ３６０）、その後、更に解析位置を１文字分進め（ステップＳ３７０）、全語についての解析が完了するまでは、ステップＳ３００に戻って、処理を繰り返す。なお、長音記号の前の文字がかな文字である場合、あるいはマイナス記号の前の文字がかな文字でない場合には、記号と記号前の文字の組み合わせは適当であると判断し、何も行なわずそのまま解析位置を元に戻し（ステップＳ３６０）、更に次の解析位置まで１文字進め（ステップＳ３７０）、全語の解析が完了するまで、上述した処理を繰り返す（ステップＳ３８０）。
【００４１】
以上の長音記号／マイナス記号用法判定処理ルーチンが終了すると、長音記号／マイナス記号用法判定モジュール６０により、長音記号とマイナス記号の用法の判定結果（これらの記号とその前の文字列との組み合わせが不適切と判断されたもの）が、所定の領域に記憶される。この結果を受けて、次に検出結果表示モジュール９０がこれをＣＲＴ２６に表示する処理を行なう。この処理が、図２に示した表示処理（ステップＳ１４０）に相当する。検出結果表示モジュール９０は、長音記号／マイナス記号用法判定モジュール６０における判定結果を、修正候補とともにＣＲＴ２６上に表示する。この表示の一例を、図７に示した。図７には、「長音記号の１文字前の文字が仮名文字以外」であり、不適当な組み合わせと判定された場合の判定結果及び修正候補の表示の一例を示した。
【００４２】
本実施例の文章校正装置では、長音記号及びマイナス記号が文章中で適切に用いられているか否かを、精度良くかつ効率的に判定することができる。しかも、長音記号およびマイナス記号の校正のために、両記号を含む単語をハードディスク３２に格納された校正用の辞書ファイルに予め登録しておく必要がなく、新たな外来語などであっても、長音記号やマイナス記号の用法を正しく判定することができる。また、数式など、単語とは観念しにくいものであっても、両記号の誤用を検出することができる。従って、辞書ファイルの記憶容量をいたずらに増大することがない。また、本実施例によれば、長音記号やマイナス記号とその前に存在する文字の種類の間における組み合わせの適否のみならず、全角／半角の一致をも各記号の用法の適否の判断の基準とするため、例えば、「Ａ-Ｂ」（全角文字＋半角のマイナス記号）や「A−Ｂ」（半角の英数字＋全角のマイナス記号）等の組み合わせも不適当と判断して校正の対象とすることができる。これらの結果、本実施例の文章校正装置によれば、長音記号またはマイナス記号を含む単語について、該単語を構成する文字及び記号の全角／半角の不統一を検出することができる。
【００４３】
なお、本実施例ではステップＳ３４５において仮名文字であるか否かを判定しているが、英文字であるか否かを判定する処理等に置き換えることも可能である。この場合には、マイナス記号の前の文字が英数字であれば組み合わせは正しいと判断し、マイナス記号の前の文字が英数字でなければ不適切な組み合わせと判断することになる。従って、マイナス記号の前がかな文字か英数字の場合には、同じ判定結果を生じるが、マイナス記号の前が「漢字」の場合には、前者ではこれを不適切な組み合わせとは見ないのに対して、後者の場合はこれを不適切な組み合わせと判定することになるという違いが生じる。日本語を構成し得る文字のうち、漢字とマイナス記号の組み合わせのあり得る場合（例えば「東京−新橋間」のような地名表示を想定する場合）には前者の構成を採り、あり得ない場合には後者の構成を採れば良い。
【００４４】
次に、本実施例の文章校正装置におけるカタカナ単語表記判定モジュール７０と英文字単語表記判定モジュール８０の処理について、併せて説明する。カタカナ単語表記判定モジュール７０及び英文字単語表記判定モジュール８０は、カタカナのみから構成された単語および英数字のみから構成された単語の表記の不一致を判定するモジュールである。その詳細な処理を図８のフローチャートに示した。図８に示したカタカナ及び英単語表記判定ルーチンは、一文獲得モジュール４０から受け取った最初の一文の先頭を解析位置として設定して起動され、まず、設定された解析位置に存在する文字がカタカナであるか否かを判定する処理を行なう（ステップＳ４００）。解析位置の文字がカタカナではないと判定した場合には、次に解析位置の文字が英数字であるか否かを判定する処理を行なう（ステップＳ４０５）。なお、これらの判断では、解析位置の文字が、全角文字か半角文字かを区別せず、判断を行なう。解析位置の文字がカタカナでも英数字でもないと判断された場合には、解析位置を１文字文進め（ステップＳ４１０）、一文獲得モジュール４０を介して次々と受け取る全文字列（構成対象として指定された範囲の全文字列）について解析が完了したかを判断する（ステップＳ４７０）。解析が完了していなければ、ステップＳ４００に戻って処理を繰り返す。
【００４５】
解析位置に存在する文字がカタカナであると判定した場合は（ステップＳ４００）、当該解析位置以後に連続して存在するカタカナ文字を１つの単語として切り出す処理を行ない、カタカナのみから構成された単語を生成する処理を行なう（ステップＳ４２０）。なお、この処理では、ステップＳ４００で検出されたカタカナが全角文字であれば、全角のカタカナが連続して存在する範囲を一つの単語として生成し、最初に検出されたカタカナが半角文字であれば、半角のカタカナが連続して存在する範囲を一つの単語として生成する。こうして切り出された単語を単語Ａと呼ぶ。同様の処理を、解析位置の文字が英数字であると判定した場合にも実行し（ステップＳ４０５，Ｓ４２５）、英数字の全角文字のみが連続する文字列もしくは英数字の半角文字のみが連続する文字列を、単語Ａとして生成する。
【００４６】
次に、単語Ａを、単語Ａに対応しかつ全角／半角の異なる文字列に変換し、単語Ｂを生成する処理を行なう（ステップＳ４３０）。例えば、単語Ａが全角文字からなる「エディター」である場合には、半角文字からなる「エテ゛ィター」を単語Ｂとして生成する。単語Ａが全角文字からなる「ＡＢ１２」であれば、半角文字からなる「AB12」が単語Ｂである。次に、構成対象として指定された範囲のうち、先頭から解析位置までに、単語Ａが既に使用されていたか否かを判定する（ステップＳ４４０）。単語Ａが既に使用されている場合には、単語Ａの表記は既使用の表記に一致しており、単語Ａについての表記は統一されていると判定することができる。他方、単語Ａがまだ使用されていないと判断された場合には（ステップＳ４４０）、単語Ａとは、全角／半角の異なる単語Ｂが既に使用されていたか否かを判定する（ステップＳ４４５）。単語Ｂが既に使用されている場合には、単語Ａの表記とは異なる表記が既に使用されていたことになるので、単語Ａの表記は既出表記と不一致と判定する（ステップＳ４５５）。この不一致の判定結果は、その内容と共に、検出結果表示モジュール９０に出力される。単語Ｂもまだ使用されていない場合には、単語Ａの表記は校正対象内で初めて使われた表記なので、単語ＡをＲＡＭ２３内の所定の領域内に記憶し（ステップＳ４５０）、以後のステップＳ４４０及びＳ４４５における判断において参照可能とする。
【００４７】
ステップＳ４４０で単語Ａが既に使用されていると判定された場合またはステップＳ４５０もしくはＳ４５５の判定処理を経た後は、解析位置を単語Ａの文字数分だけ進め（ステップＳ４６０）、校正対象内の全語の解析が完了するまで（ステップＳ４７０）、以上の処理を繰り返す。なお、校正対象となる文字列の全ての解析が完了すると、検出結果表示モジュール９０により、本ルーチンにおける判定結果が修正候補とともにＣＲＴ２６の画面上に表示される。かかる表示の一例を図９に示す。図９は、校正対象内において、まず「エディター」という全角文字からなる単語が使用されており、その後に「エテ゛ィター」という半角文字からなる単語が使用されていた場合に、表記が不統一と判定され、その判定結果及び修正候補を画面上へ表示した例である。
【００４８】
本実施例の文章校正装置では、校正対象内におけるカタカナ単語の全角および半角表記の不統一を、精度良くかつ効率的に判定することができる。しかも、校正対象内のカタカナ文字の連続を、単語として切り出す構成をとっているため、未登録単語ばかりでなく、数字等のように単語とは観念しにくいものであっても、表記の不統一を検出することができる。本実施例の文章校正装置では、カタカナ文字または英数字から構成される単語を、ハードディスク３２に格納された構成用の辞書に予め登録しておく必要がない。さらに、従来は、校正内容を確定する際に、カタカナ文字、英字等について全角半角のいずれに統一をするかを個別に指定していたが、本実施例の文章校正装置では、こうした指定を行なう必要がなく、単語毎に全角文字または半角文字の不統一を判定することができる。したがって、使用者の多様な用字のパターンに対応した構成を行なうことができる。
【００４９】
さらに、本実施例では、校正対象内で最初に解析されたカタカナ文字等の連続した文字列を、当該文字列が全角または半角のいずれであるかについての情報とともに既出単語として記憶しておく構成を採っているので、ＯＣＲ入力などのように、文章中に何度か用いられた同一の表記（例えば「エディター」という全角文字列）の１つが、認識時に誤って「エテ゛ィター」と読み取られてしまっても、これらの相互の表記の不統一を確実に検出することができる。
【００５０】
以上本発明の一実施例について説明したが、本発明はこの様な実施例になんら限定されるものではなく、本発明の要旨を逸脱しない範囲において種々なる態様で実施し得ることは勿論である。
【図面の簡単な説明】
【００５１】
【図１】本発明の一実施例である文章校正装置が実現されるハードウェアを示すブロック図である。
【図２】本発明の実施例で実行される文章校正処理ルーチンを説明するフローチャートである。
【図３】実施例としての文章校正装置における文章校正機能を実現するモジュールの関係を示したブロック図である。
【図４】一文獲得モジュール４０において実行される文末判定処理ルーチンを示すフローチャートである。
【図５】一文獲得モジュール４０において獲得される一文の例を示す説明図である。
【図６】長音記号／マイナス記号用法判定モジュール６０において実行される長音記号とマイナス記号の用法判定ルーチンを示すフローチャートである。
【図７】長音記号とマイナス記号の用法判定結果の表示の一例を示す説明図である。
【図８】カタカナ単語表記判定モジュール７０及び英文字単語表記判定モジュール８０において実行されるカタカナ単語及び英文字単語表記判定処理ルーチンを示すフローチャートである。
【図９】カタカナ単語及び英文字単語表記判定結果の表示の一例を示す参考図である。
【符号の説明】
【００５２】
２１...ＣＰＵ
２２...ＲＯＭ
２３...ＲＡＭ
２４...キーボード
２５...キーボードインターフェイス
２６...ＣＲＴディスプレイ
２７...ＣＲＴＣ
２８...プリンタ
２９...プリンタインターフェイス
３１...バス
３２...ハードディスク
４０...一文獲得モジュール
５０...日本語解析モジュール
５５...誤字・脱字検出モジュール
６０...長音記号／マイナス記号用法判定モジュール
７０...カタカナ単語表記判定モジュール
８０...英文字単語表記判定モジュール
【図１】
0003599734.tif 000002
【図２】
0003599734.tif 000003
【図３】
0003599734.tif 000004
【図４】
0003599734.tif 000005
【図５】
0003599734.tif 000006
【図６】
0003599734.tif 000007
【図７】
0003599734.tif 000008
【図８】
0003599734.tif 000009
【図９】
0003599734.tif 000010