(57)【特許請求の範囲】
【請求項１】
複数の単語を含んで構成される文字列を入力可能な情報処理装置における文字入力補助方法であって、
前記情報処理装置に入力され、確定された文字列について、該文字列に含まれる全ての単語を要素とする単語集合をメモリに登録する登録工程と、
前記情報処理装置に対して入力途中の文字列について、該文字列と完全一致もしくは部分一致する単語を含む単語集合を前記登録工程で登録された単語集合の中から取得する取得工程と、
前記取得工程で取得された単語集合に含まれる単語のうち、前記入力された文字列に完全一致もしくは部分一致する単語を該入力された文字列に従って並べ、残りの単語をその後ろに付加し、各単語の間に所定の文字記号を挿入することにより補完候補文字列を生成し、提示する生成工程とを備えることを特徴とする文字入力補助方法。
【請求項２】
前記完全一致もしくは部分一致する単語を含む単語集合とは、前記入力途中の文字列の入力済みの文字列と一致する単語もしくは該入力済みの文字列と前方一致する単語を順序によらず含む単語集合であることを特徴とする請求項１に記載の文字入力補助方法。
【請求項３】
表示画面上に所定のフィールドを表示するフィールド表示工程を更に備え、前記情報処理装置へ入力される文字列とは前記所定のフィールドへ入力される文字列であることを特徴とする請求項１に記載の文字入力補助方法。
【請求項４】
前記取得工程で取得された単語集合において、前記入力された文字列と完全一致もしくは部分一致する単語とは別の、出現回数が所定数以上の単語を抽出する抽出工程と、
前記入力された文字列と完全一致もしくは部分一致する単語と、前記抽出工程で抽出された単語とで構成されるグループを提示する提示工程とを更に備え、
前記生成工程は、前記取得工程で取得された単語集合のうち、前記提示工程で提示されたグループの中からユーザにより選択されたグループに含まれる全ての単語を含む単語集合を用いて前記補完候補文字列を生成することを特徴とする請求項１に記載の文字入力補助方法。
【請求項５】
前記提示工程で提示されたグループより選択されたグループに含まれる全ての単語を含む単語集合の数が所定数を超えるか否かを判定する判定工程を更に備え、
前記生成工程は、前記判定工程により所定数以下であると判定された場合に、前記選択されたグループに含まれる全ての単語を含む単語集合を用いて前記補完候補文字列を生成することを特徴とする請求項４に記載の文字入力補助方法。
【請求項６】
複数の単語を含んで構成される文字列を入力可能な情報処理装置であって、
前記情報処理装置に入力され、確定された文字列について、該文字列に含まれる全ての単語を要素とする単語集合をメモリに登録する登録手段と、
前記情報処理装置に対して入力途中の文字列について、該文字列と完全一致もしくは部分一致する単語を含む単語集合を前記登録手段で登録された単語集合の中から取得する取得手段と、
前記取得手段で取得された単語集合に含まれる単語のうち、前記入力された文字列に完全一致もしくは部分一致する単語を該入力された文字列に従って並べ、残りの単語をその後ろに付加し、各単語の間に所定の文字記号を挿入することにより補完候補文字列を生成し、提示する生成手段とを備えることを特徴とする情報処理装置。
【請求項７】
請求項１乃至５のいずれかに記載の方法をコンピュータに実行させるためのコンピュータプログラム。
【請求項８】
請求項７に記載のコンピュータプログラムを格納したコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、キーボード等の文字入力装置を用いて文字入力を行う際に、文字を補完することで入力操作を補助するための装置、方法ならびに実行プログラムに関するものである。
【背景技術】
【０００２】
一般に、テキスト入力をするためのフィールドを有するアプリケーションプログラムが数多く存在する。例えば、ウェブブラウザでは、検索のための検索語の入力を目的としたテキスト入力フィールドをウエブページに配置することが可能である。このような検索を目的とする入力では、過去に入力した検索語と同じ語を入力する機会が多い。このため、入力履歴に基づき入力を補助する技術が提案されている。
【０００３】
例えばウェブブラウザで検索サイトに接続した場合、複数の検索語をスペース文字で連結した文字列（スペース区切り文字列という）として指定することができる。ウェブブラウザは該スペース区切り文字列を入力履歴として記憶しておく。そして、新たに文字列が入力されると、ウエブブラウザは入力履歴として記憶されたスペース区切り文字列に基づいて入力中の文字を補完し、完全なスペース区切り文字列を入力候補としてユーザに提示する。
【０００４】
その他、単一の単語やフレーズの先頭の部分文字列を指定すると、残りの部分文字列を過去の履歴に基づいて補完する技術がある。当該技術においては補完部分の提示方法と、既表示部分との間に差異を与えるという手段で入力補助を行うことを特徴としている。そのような技術の代表例が特許文献１に開示されている。
【特許文献１】特開２００２-０９９３７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来技術による補完機能は、スペース区切り文字列の全体を一つの単語として扱う。そのため、検索を目的としたフィールド等への入力操作において上記補完機能を利用するには、過去に入力されたスペース区切り文字列の先頭からの部分文字列（先頭文字列という）を指定する必要がある。一般にユーザは複数の検索語を順不同で指定しており、過去に入力したスペース区切り文字列の単語の順番通りに入力していくことが困難となる場合も多い。即ち、たまたま一番目に指定した検索語を思い出して入力を開始しなければならないという操作上の制限はユーザにとって大きな負担となる。
【０００６】
図１を用いて上記動作を説明する。図１（Ａ）の１０１、１０２はスペース区切り文字列の過去の入力の履歴である。図１（Ｂ）に示すように、入力フィールド１１１に“デジ”と入力されると、前方一致比較により入力履歴中のスペース区切り文字列１０１，１０２が抽出され、補完候補１２１，１２２として表示される。次に、入力フィールド１１１において、続けて“カメ  model6”と入力すると、“デジカメ  model16”という文字列により前方一致比較が行われ、入力履歴中のスペース区切り文字列１０１のみが抽出される。よって、図１（Ｃ）に示されるように、補完候補１２１のみが表示される。このようにして、補完候補が絞られていく。
【０００７】
一方、図１（Ｄ）に示すように、入力フィールド１１１に“解像度”と入力した場合は、入力履歴中のスペース区切り文字１０１，１０２共に先頭文字列として一致するものがない。即ち、前方一致比較により抽出されるスペース区切り文字列が存在しない。従って、この場合は、補完候補は無しとなり、１３１に示すように空白を表示する。また、図１（Ｅ）に示されるように、図１（Ｂ）の状態から継続して入力フィールド１１１に“カメ  解”と入力した場合も、1入力履歴中のスペース区切り文字１０１，１０２共に先頭文字列として一致するものがなくなる。従って、補完候補なしとなり、図１（Ｂ）の段階では表示されていた補完候補が消失し、空白１３１が表示される。
【０００８】
以上のように、従来技術は、補完候補の提示により入力操作の負担を軽減するが、単語の順番が異なれば意図した補完候補を得ることができなくなる。また、補完結果に対する選択等の操作を容易にするための提案はなされているものの、上述したような操作上の制限（単語の入力順を正確に一致させる）に関する課題は依然として残っている。
【０００９】
本発明は上記の課題に鑑みてなされたものであり、文字列の入力操作におけるユーザの負担をより軽減することを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するための本発明による文字入力補助方法は、
複数の単語を含んで構成される文字列を入力可能な情報処理装置における文字入力補助方法であって、
前記情報処理装置に入力され、確定された文字列について、該文字列に含まれる全ての単語を要素とする単語集合をメモリに登録する登録工程と、
前記情報処理装置に対して入力途中の文字列について、該文字列と完全一致もしくは部分一致する単語を含む単語集合を前記登録工程で登録された単語集合の中から取得する取得工程と、
前記取得工程で取得された単語集合に含まれる単語のうち、前記入力された文字列に完全一致もしくは部分一致する単語を該入力された文字列に従って並べ、残りの単語をその後ろに付加し、各単語の間に所定の文字記号を挿入することにより補完候補文字列を生成し、提示する生成工程とを備える。
【００１１】
また、上記の目的を達成するための本発明による情報処理装置は、
複数の単語を含んで構成される文字列を入力可能な情報処理装置であって、
前記情報処理装置に入力され、確定された文字列について、該文字列に含まれる全ての単語を要素とする単語集合をメモリに登録する登録手段と、
前記情報処理装置に対して入力途中の文字列について、該文字列と完全一致もしくは部分一致する単語を含む単語集合を前記登録手段で登録された単語集合の中から取得する取得手段と、
前記取得手段で取得された単語集合に含まれる単語のうち、前記入力された文字列に完全一致もしくは部分一致する単語を該入力された文字列に従って並べ、残りの単語をその後ろに付加し、各単語の間に所定の文字記号を挿入することにより補完候補文字列を生成し、提示する生成手段とを備える。
【発明の効果】
【００１２】
本発明によれば、文字列の入力操作におけるユーザの負担がより軽減される。
【発明を実施するための最良の形態】
【００１３】
以下、添付の図面を参照して本発明の好適な実施形態を説明する。
【００１４】
＜第１実施形態＞
［装置構成について］
図２は第１実施形態による情報処理装置の構成を示す図である。コンピュータ装置２０１は不図示のＣＰＵ、ＲＡＭ、ＲＯＭや、外部記憶装置２４１（例えばハードディスク）等を備え、ＣＰＵが制御プログラムを実行することにより２０２〜２０５に示される機能を実現する。なお、コンピュータ装置２０１としてパーソナルコンピュータ等の汎用コンピュータを用いることができることは明らかである。
【００１５】
テキスト入力部２１１は、キーボード２２１を用いたテキスト入力を受け付ける。履歴管理部２１２はテキスト入力部２１１を介してキーボード２２１より入力されたスペース区切り文字列を取得し、例えば外部記憶装置２４１に入力履歴データとして記憶する。なお、スペース区切り文字列は複数の単語をスペースで区切って形成された文字列であるが、単語を区切る文字としてスペース以外の文字・記号が用いられてもよい。即ち、何らかの所定の文字または記号により区切られた複数の単語から構成される区切り文字列であればよい。なお、単語を区切る文字の存在しない、一つの単語からなる文字列も区切り文字列に含まれるものとする。保管候補文字列生成部２１３は、テキスト入力部２１１によって入力された文字列と、履歴管理部２１２が管理する入力履歴データに基づいて、入力された文字列に対して補完文字列を生成する。補完候補表示制御部２１４は補完文字列生成部２１３によって生成された補完文字列の表示を含む、各種表示制御を実行する。
【００１６】
以上のような構成の情報処理装置による補完候補表示処理について、以下、具体的に説明する。
【００１７】
［入力履歴データの登録処理について］
まず、図３〜図５を用いて、履歴管理部２１２による入力履歴データの登録処理について説明する。
【００１８】
図３、図４は、スペース区切り文字列“デジカメ  model1600  解像度”と“デジカメ  model55  解像度”が入力された際に作成された単語リストテーブルの例を示す図である。図３のスペース区切り文字列テーブル３００において、欄３０１には実際に入力されたスペース区切り文字列が登録される。欄３０２には、スペース区切り文字列を単語集合として管理するために付与されたＩＤが登録される。以下、１つのスペース区切り文字列から取得される単語集合を単語リスト、単語リストに付与されたＩＤを単語リストＩＤと称する。欄３０３には、単語リストの要素となる各単語に付与された単語ＩＤが登録される。レコード３０４は“デジカメ  model1600  解像度”のスペース文字列に対応し、レコード３０５は“デジカメ  model55  解像度”のスペース文字列に対応する。
【００１９】
図４の単語テーブル４００において、欄４０２には入力されたスペース区切り文字列を構成する各単語の文字列が登録され、欄４０１には各単語の単語ＩＤが登録される。なお、図３の単語ＩＤの欄３０３には、単語テーブル４００で付与された単語ＩＤが登録される。レコード４０３〜４０６には図３のレコード３０４，３０５に登録されたスペース区切り文字列を構成する単語の登録状態が示されている。
【００２０】
次に、図５を用いて履歴管理部２１２が主体となって行う入力履歴データ登録処理を説明する。まずステップＳ５０１においてユーザによって所定のフィールド（例えば検索語の入力フィールド）に入力されたスペース区切り文字列を受け付ける。ステップＳ５０２でユーザによる確定操作入力が検知されると、入力されたスペース区切り文字列を用いた所定の処理（例えば検索処理）が実行される。そして、この所定の処理と並行して、入力履歴データの登録が行われる。即ち、確定操作に応じて処理はステップＳ５０２からステップＳ５０３へ進み、ステップＳ５０１で受け付けたスペース区切り文字列から単語を抽出し、単語集合を得る。なお、単語の抽出は、スペース区切り文字列をスペースで分離することにより実現できる。次に、ステップＳ５０４において、ステップＳ５０３で得られた単語集合の各単語について単語テーブル４００に登録済みか否かを調べる。
【００２１】
単語集合が単語テーブル４００に登録されていない単語を含む場合は、ステップＳ５０３で得た単語集合に新規生起単語が含まれていると判定され、ステップＳ５０４からステップＳ５０５へ処理が進む。ステップＳ５０５では、ステップＳ５０３で得た単語集合を構成する単語のうち、単語テーブル４００に登録されていない全ての単語を新規生起単語として抽出する。そして、抽出した新規生起単語の各々に単語ＩＤを付与して単語テーブル４００に追加登録する。更に、ステップＳ５０６において、当該スペース区切り文字列の単語集合を新たな単語リストとしてこれに単語リストＩＤを付与し、当該スペース区切り文字列を構成する単語のＩＤとともに単語リストテーブル３００に登録する。
【００２２】
一方、ステップＳ５０４で新規生起単語が含まれない場合、処理はステップＳ５０７に進み、ステップＳ５０３で取得した単語集合と同一の単語集合（単語リスト）が単語リストテーブル３００に登録されているかどうかを調べる。単語リストテーブル３００に同一の単語集合が存在する場合は、そのスペース区切り文字列は登録済みであるとして本処理を終了する。同一の単語集合が存在しない場合は、ステップＳ５０７からステップＳ５０６へ進み、新たな単語リストとして単語リストテーブル３００に追加登録する。
【００２３】
以上のようにして、所定のフィールドにスペース区切り文字列が入力されることにより、入力履歴データ（単語リストテーブル３００、単語テーブル４００）が生成されていく。
【００２４】
例えば、“デジカメ  model1600  解像度”が単語リストテーブル３００に登録された状態（単語テーブル４００には単語ＩＤ＝０１〜０３までが登録されている）で、“デジカメ  model55  解像度”というスペース区切り文字列が入力されたとする。この場合、単語テーブル４００に存在しない単語（model55）が存在するので、処理はステップＳ５０４からステップＳ５０５へ進む。ステップＳ５０５では新規生起単語であるmodel55に単語ＩＤ＝０４を付与し、これを単語テーブル４００に登録する。この結果、単語テーブル４００の内容は図４のようになる。そして、ステップＳ５０６において、スペース区切り文字列“デジカメ  model55  解像度”に対して、単語リストＩＤ０００２が付与され、単語リストテーブル３００に登録される。このとき、当該スペース区切り文字列が含む単語のＩＤ、即ち、デジカメ＝０１、model55＝０４、解像度＝０３が単語テーブル４００から取得され、単語ＩＤの欄３０３に登録される。こうして、レコード３０５が追加される。
【００２５】
［単語補完処理について］
次に、以上のようにして記録された入力履歴データ（単語リストテーブル３００、単語テーブル４００）を用いた、単語補完処理について説明する。
【００２６】
図６は本実施形態による単語補完処理を説明するフローチャートであり、補完文字列生成部２１３と補完候補表示制御部２１４による処理を示す。まず、ステップＳ６０１において、補完文字列生成部２１３はユーザからの入力を受け付ける。ユーザからの入力が「確定」であった場合は、ステップＳ６０２から即座に本処理を終了する。なお、確定操作によりスペース区切り文字列を用いた所定処理と上述の入力履歴データ登録処理が行われる。ユーザからの入力が文字・記号であった場合は、ステップＳ６０２からステップＳ６０３へ進む。ステップＳ６０３において、補完文字列生成部２１３は入力過程にある完全または不完全な単語から構成される文字列を抽出し、完全一致または部分一致（前方一致）する単語を単語リスト４００から検索し、対応する単語ＩＤを抽出する。ただし、スペースが含まれている場合は、スペース以前の文字列、或いはスペースとスペースで挟まれた文字列については完全一致する単語のみを抽出する。
【００２７】
そして、ステップＳ６０４において、補完文字列生成部２１３は、ステップＳ６０３で抽出した単語ＩＤを含む単語リストＩＤを抽出する。なお、ここで抽出される単語リストＩＤは、「区切り文字（スペース）で確定された全ての単語の単語ＩＤ」と「単語として未確定の文字列について完全一致もしくは部分一致する単語（複数存在する場合はそれらのうちの一つ）の単語ＩＤ」とを含むものである。ステップＳ６０５において、補完文字列生成部２１３は、ステップＳ６０４で抽出された単語リストＩＤに対応する単語リスト（単語集合）を用いて補完文字列を生成する（補完文字列の生成については後述する）。そして、ステップＳ６０６において、補完候補表示制御部２０１は、ステップＳ６０５で生成された補完文字列を補完候補としてディスプレイ２３１に表示する。
【００２８】
以上の単語補完処理について図７の具体例を用いて説明する。なお、入力履歴データとして図３に示す単語リストテーブル３００、図４に示す単語テーブル４００が形成されているものとする。
【００２９】
入力フィールド７０１に図７（Ａ）に示すテキスト入力（“解像”）を実施したとする。すると、単語テーブル４００において“解像”という文字列を含む単語“解像度”が抽出され、単語ＩＤ＝０３が取得される（ステップＳ６０３）。そして、図３に示す単語リストテーブル３００から単語ＩＤ＝０３を含む単語リストを検索し、単語リストＩＤ＝０００１と０００２が取得される（ステップＳ６０４）。各単語リストに含まれる単語のうち、前方一致した単語“解像度”をまず最初に置き、その後に残りの単語集合の要素を、区切り文字としてスペースを用いて並べることで補完文字列を構築する（ステップＳ６０５）。こうして構築された補完文字列は、補完候補表示制御部２０１により、補完候補表示７１１，７１２のようにディスプレイ２３１に表示される。なお、ステップＳ６０５の補完候補文字列の構築においては、抽出された単語リストに含まれる単語のうち、完全一致または部分一致した単語を入力順に並べ、その後ろに残りの単語を並べる。このとき、残りの単語の並び順は任意であるが、例えばＩＤ番号順に並べるようにすればよい。
【００３０】
引き続き入力が行われ、例えば、“解像度  mode”まで入力された場合を説明する。“解像度”はスペースにより単語として確定されるので、完全一致する単語（単語ＩＤ＝０３）のみが単語テーブル４００から取得され、“mode”について部分一致する単語（単語ＩＤ＝０２，０４）が取得される（ステップＳ６０３）。そして、ステップＳ６０４では、単語ＩＤ＝０３と０２を含む単語リストと、及び単語ＩＤ＝０３と０４を含む単語リストが抽出される。この結果、上記と同様に図７（Ａ）に示されるように補完候補が表示される。
【００３１】
さらに入力を継続し図７（Ｂ）に示すように、入力フィールド７０１に“解像度  model16”が入力されたとする。この場合、“解像度”についてはスペースにより単語が確定しているので、完全一致した単語のみが単語テーブル４００から抽出される。また、“model16”については単語として確定していないので、完全一致または部分一致する単語が単語テーブルから抽出される。本例の場合、単語テーブル４００から単語ＩＤ＝０３と０２が抽出される。その後、単語リストテーブル３００から単語ＩＤ＝０３と０２の両方を含む単語リストが抽出される。本例の場合、単語リストＩＤ＝０００１が抽出され、この抽出結果に基づいて表示が行われる。この結果、図７（Ｂ）に示すように、補完候補７１１のみが表示されることになる。
【００３２】
ユーザが、提示された補完候補（図７では７１１、７１２）の一つを選択すると、その内容が入力フィールド７０１に設定される。
【００３３】
また、以上のような処理によれば、入力フィールド７０１に“デジカメ  解”と入力された段階で単語ＩＤ＝０１と０４を含む単語リストが抽出される。その結果、図１４（Ｃ）に示されるように補完候補文字列７２１が表示されることなる。このため、例えば、図１（Ｅ）に示したような候補文字列の消失を回避することができる。
【００３４】
以上説明したように、第１実施形態によれば、単語テーブルから入力文字列と完全一致または部分一致する単語を抽出し、抽出された単語を含む単語リストを単語リストテーブルから抽出し、これを用いて補完候補文字列を表示する。よって、単語の入力順を意識せずとも過去に入力されたスペース区切り文字列と同じ単語構成の補完候補文字列を表示させることができ、前方補完候補を用いた入力操作の操作性が向上する。また、単語の入力順の相違に起因する候補文字列の消失を防止できる。
【００３５】
＜第２実施形態＞
上記第１実施形態では、単語の入力順にかかわらずに単語リストが抽出され、補完候補文字列が表示される。しかしながら、入力した単語によっては補完候補が多く表示され、視認性が悪くなることも予想される。第２実施形態ではこのような課題を解決するべく、補完候補を絞り込んで表示する。
【００３６】
図８は第２実施形態による補完候補の絞込み処理を説明するフローチャートである。なお、図８は、図６のステップＳ６０４とＳ６０５の間に挿入される処理である。上述したように、ステップＳ６０３では、入力中の文字列より単語が抽出され（第２実施形態ではこれをＮ個の単語（Ｎは１以上）と称する）、ステップＳ６０４ではＮ個の単語を含む単語リスト群が抽出される。ステップＳ８０１では、ステップＳ６０４で抽出されたＮ個の単語を含む単語リスト群から、所定回数以上出現する単語をＮ＋１個目の単語として抽出する。なお、抽出の基準となる「所定回数」はユーザが外部から設定可能としてもよい。そのようなＮ＋１個目の単語が抽出できなかった場合は、ステップＳ６０５へ進み、第１実施形態で説明したような補完候補文字列のリスト表示を行う。Ｎ＋１個目の単語を１つ以上抽出できた場合は、ステップＳ８０３へ進み、Ｎ個の単語とＮ＋１個目として抽出された単語の組を表示する（具体例は図１０の（Ａ）等を参照して後述する）。
【００３７】
ステップＳ８０３による表示の後、単語の組の一つが選択された場合、処理はステップＳ８０４からステップＳ８０５へ進み、選択された単語の組に含まれているＮ＋１個の単語を含む単語リストにより補完候補文字列を生成する。すなわち、ユーザがＮ＋１個目として抽出された単語の一つを入力或いは選択したことに応じて、当該Ｎ＋１個の単語を含む単語リストを用いて、当該Ｎ＋１個の単語を先頭とする補完候補文字列を生成する。そして、これを表示すべくステップＳ６０６へ処理を進める。なお、Ｎ＋１個目の単語を選択した時点で、当該Ｎ＋１個の単語を上記所定のフィールドに表示させるようにしてもよい。
【００３８】
なお、ステップＳ８０３による表示の後、所定のフィールドに文字が入力された場合は、ステップＳ８０４からステップＳ６０１へ処理を戻す。そして、所定のフィールド内の更新された文字列について、ステップＳ６０１からの上記処理を繰り返す。
【００３９】
また、ステップＳ８０３による表示の後、図１０（Ａ）の１０１３（全リスト表示）が指示された場合には、Ｎ個の単語を含む単語リストの全リスト表示を行うようにしてもよい。全リスト表示は上述のステップＳ６０４，Ｓ６０５の処理を実行することで実現できる。従って、図８では示されていないが、ステップＳ８０３の表示状態で全リスト表示が指示された場合には、ステップ８０４からステップＳ６０５へ処理が進むようにすればよい。
【００４０】
なお、ステップＳ８０４の選択入力の判定には、図１０（Ａ）に示すような候補文字列１０１１或いは１０１２の選択を用いてもよいが、これに限られるものではない。例えば、Ｎ＋１個目の単語のいずれかと完全一致する文字列及び区切り文字（スペース）が入力された時点で選択入力と判定するようにしてもよい。この場合、Ｎ＋１個目の単語以外の文字列が入力された時点で、直ちに処理をステップＳ６０１へ戻すようにする。
【００４１】
次に、図９及び図１０を用いて具体例を説明する。なお、図９に示す単語リスト９０１〜９０５が入力履歴データとして単語リストテーブル３００や単語テーブル４００に登録済であることを前提とする（ただし、各テーブルの図示、説明は省略する）。
【００４２】
図１０（Ａ）に示すように入力フィールド１００１に“デジカメ”という入力がなされると、単語テーブルから“デジカメ”という単語が抽出され（ステップＳ６０３）、該単語を含む単語リストが単語リストテーブルから抽出される（ステップＳ６０４）。この例ではＮ個の単語としてデジカメが抽出され（この場合Ｎ＝１である）、図９の単語リスト９０１〜９０５が抽出される。次に、抽出された単語リストから生起回数（出現回数）が２以上の単語をＮ＋１個目の単語として抽出する（ステップＳ８０１）。図９の例では“解像度”と“ノイズ”がＮ＋１個目の単語に該当する。こうして抽出されたＮ＋１個目の単語を入力フィールド１００１に入力された単語と共に表示（１０１１，１０１２）しユーザの選択を促す（ステップＳ８０３）。なお、第１実施形態の動作にしたがって抽出された単語リストに基づいて生成された補完候補文字列を同時に表示するようにしてもよい。本実施形態では、全リスト表示１０１３を提示し、第１実施形態に従った補完候補文字列の表示を行うか否かをユーザに選択させる。
【００４３】
ユーザは図１０（Ａ）に示すような表示から、所望のＮ＋１個目の単語を選択する（ステップＳ８０４）。例えば、所望の単語を含む候補文字列をマウスにより選択することができる。図１０（Ｂ）のように１０１１が選択された場合、入力フィールド１００１に入力済みとなっているＮ個の単語である“デジカメ”と、Ｎ＋１個目の単語である“ノイズ”とが入力フィールド１００１に自動的に反映される。そして、“デジカメ”と“ノイズ”を含む単語リストのみが補完候補（１０２１〜１０２３）として表示される（ステップＳ８０５）。
【００４４】
＜第３実施形態＞
第３実施形態では、上記第２実施形態の補完候補の絞込み処理において補完候補表示を制限する処理について説明する。
【００４５】
図１１を参照して第３実施形態の処理を説明する。図１１に示す処理は、第２実施形態の図８の処理に置き換わるものである。図１１において、図８と同様の処理を行なうステップには同一の参照番号を付与してある。なお、図１１の処理の実行に先立って、表示する補完候補の数の制限値Ｌｉが設定される。制限値Ｌｉは固定であってもよいし、ユーザが任意に指定可能であってもよい。
【００４６】
第２実施形態で説明したようにステップＳ８０１において、入力中の文字列に含まれるＮ個の単語を含む単語リストにおいて出現回数が所定回数を超える単語をＮ＋１個目の単語として抽出する。Ｎ＋１個目の単語が抽出されたならば、ステップＳ８０２からステップＳ８０３へ進む。ステップＳ８０３ではＮ個の単語とＮ＋１個目の単語の組を表示する。表示された単語の組のうちの一つが選択されると、ステップＳ８０４からステップＳ１１０１へ進み、当該Ｎ＋１個の単語を含む単語リストの数Ｌをカウントする。単語リストの数Ｌは、Ｎ＋１個目の単語の選択によって絞り込まれた後の単語リストの数を表す。
【００４７】
次に、ステップＳ１１０２において、予め設定された補完候補文字列の表示数の制限値ＬｉとステップＳ１１０１においてカウントされた絞込み後の単語リストの数Ｌとを比較する。単語リストの数Ｌが表示数の制限値Ｌｉを超える場合（Ｌ＞Ｌｉ）は、ユーザに更に単語の追加入力を促すべく、ステップＳ６０１へ処理を戻す。このとき、単語リスト（スペース区切り文字列）の候補が十分に絞り込まれていない旨をユーザに知らせるようにしてもよい。一方、単語リストの数Ｌが表示数の制限値Ｌｉを超えていない場合（Ｌ≦Ｌｉ）は、ステップＳ８０５へ進み、抽出した単語リストに基づき補完候補を構築、表示して本処理を終了する。
【００４８】
以上のように、第３実施形態によれば、単語リストの数が所定数以下の場合にリスト表示を行うようにしたので、リスト表示における視認性を更に向上することができる。
【００４９】
以上説明したように、上記実施形態によれば、指定順序に意味をもたない複数の単語から構成される文字列の入力操作において、以前の単語の入力順に従った入力を必須とする操作上の制限を排除し、ユーザの負担を軽減することができる。
【００５０】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００５１】
尚、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによって前述した実施形態の機能が達成される場合を含む。この場合、供給されるプログラムは実施形態で図に示したフローチャートに対応したプログラムである。
【００５２】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００５３】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【００５４】
プログラムを供給するための記録媒体としては以下が挙げられる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などである。
【００５５】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムをハードディスク等の記録媒体にダウンロードすることが挙げられる。この場合、ダウンロードされるプログラムは、圧縮され自動インストール機能を含むファイルであってもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００５６】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布するという形態をとることもできる。この場合、所定の条件をクリアしたユーザに、インターネットを介してホームページから暗号を解く鍵情報をダウンロードさせ、その鍵情報を使用して暗号化されたプログラムを実行し、プログラムをコンピュータにインストールさせるようにもできる。
【００５７】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどとの協働で実施形態の機能が実現されてもよい。この場合、ＯＳなどが、実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される。
【００５８】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれて前述の実施形態の機能の一部或いは全てが実現されてもよい。この場合、機能拡張ボードや機能拡張ユニットにプログラムが書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行なう。
【図面の簡単な説明】
【００５９】
【図１】一般的な補完候補文字列の表示動作を説明する図である。
【図２】実施形態による情報処理装置の構成を示す図である。
【図３】単語リストテーブルのデータ構成例を示す図である。
【図４】単語テーブルのデータ構成例を示す図である。
【図５】第１実施形態による入力履歴データの登録処理を説明するフローチャートである。
【図６】第１実施形態による単語補完文字列の生成表示処理を説明するフローチャートである。
【図７】第１実施形態による補完候補文字列の表示動作例を示す図である。
【図８】第２実施形態による補完候補文字列の絞込み処理を説明するフローチャートである。
【図９】第２実施形態の動作を説明するための入力履歴データ例を示す図である。
【図１０】第２実施形態による補完候補文字列の表示動作例を示す図である。
【図１１】第３実施形態による補完候補文字列の絞込み処理を説明するフローチャートである。
【図１】
0004639124.tif 000002
【図２】
0004639124.tif 000003
【図３】
0004639124.tif 000004
【図４】
0004639124.tif 000005
【図５】
0004639124.tif 000006
【図６】
0004639124.tif 000007
【図７】
0004639124.tif 000008
【図８】
0004639124.tif 000009
【図９】
0004639124.tif 000010
【図１０】
0004639124.tif 000011
【図１１】
0004639124.tif 000012