(57)【要約】【課題】予測変換の精度を高くする。【解決手段】入力文字列予測装置１は、文字キー及び文字を削除するキャンセルキーを有する入力部１０と、第１記憶部２２及び第２記憶部２４と、制御部１６と、表示部１２と、を備える。制御部１６は、直近でキャンセルキーで削除された文字を第１記憶部２２に記憶させる第１文字取得部３２と、第１記憶部２２に記憶させた文字よりも前にキャンセルキーで削除された文字列を第２記憶部２４に記憶させる第２文字取得部３４と、第１記憶部２２に記憶させた文字に置換する置換文字を抽出する置換文字抽出部３６と、置換文字と第２記憶部２４に記憶させた文字とに基づき予測変換を行って単語を抽出する予測変換部３８と、予測変換部３８が抽出した単語を表示部１２に表示させる表示制御部４０と、を有する。【選択図】図１
2020140259.tif 000002
【特許請求の範囲】
【請求項１】
文字が割り当てられる文字キー、及び前記文字キーへの入力で生成される文字列に含まれる文字を削除するキャンセルキーを有する入力部と、
文字を記憶する第１記憶部及び第２記憶部を有する記憶部と、
前記入力部への入力に基づき単語を予測する制御部と、
文字を表示する表示部と、
を備え、
前記制御部は、
前記文字キーへの入力により生成された文字列を前記キャンセルキーで削除する操作に基づき、直近で前記キャンセルキーで削除された文字を第１記憶部に記憶させる第１文字取得部と、
前記第１記憶部に記憶させた文字よりも前に前記キャンセルキーで削除された文字列を前記第２記憶部に記憶させる第２文字取得部と、
前記第１記憶部に記憶させた文字を置換する置換文字を抽出する置換文字抽出部と、
前記置換文字と、前記第２記憶部に記憶させた文字とに基づき予測変換を行って単語を抽出する予測変換部と、
前記予測変換部が抽出した前記単語を前記表示部に表示させる表示制御部と、
を有する、
入力文字列予測装置。
【請求項２】
前記制御部は、前記文字キー及び前記キャンセルキーへの入力に基づき、前記文字キーにより入力された文字であって前記キャンセルキーにより削除されていない文字を、前記記憶部が有する表示文字記憶部に記憶させる表示文字取得部をさらに有し、
前記予測変換部は、前記表示文字記憶部に記憶させた文字と、前記置換文字と、前記第２記憶部に記憶させた文字とに基づき予測変換を行って前記単語を抽出する、請求項１に記載の入力文字列予測装置。
【請求項３】
前記予測変換部は、
前記表示文字記憶部に記憶させた末尾の文字の次に前記置換文字を配置し、前記置換文字の次に前記第２記憶部に記憶させた文字を配置した合成文字列を生成する文字列生成部と、
前記合成文字列に基づき前記単語を抽出する単語抽出部と、を有する、請求項２に記載の入力文字列予測装置。
【請求項４】
前記単語抽出部は、前記合成文字列と前方部分一致する前記単語を抽出する、請求項３に記載の入力文字列予測装置。
【請求項５】
前記表示文字取得部は、前記キャンセルキーが入力された場合に、前記表示文字記憶部に記憶させた文字列に含まれる末尾の文字を、前記表示文字記憶部に記憶させた文字列から削除する、請求項２から請求項４のいずれか１項に記載の入力文字列予測装置。
【請求項６】
前記置換文字抽出部は、前記第１記憶部に記憶させた文字に割り当てられる前記文字キーの周囲にある前記文字キーに割り当てられる文字を、前記置換文字とする、請求項１から請求項５のいずれか１項に記載の入力文字列予測装置。
【請求項７】
文字が割り当てられる文字キー、及び前記文字キーへの入力で生成される文字列に含まれる文字を削除するキャンセルキーを有する入力部への入力に基づき単語を予測する入力文字列予測方法であって、
前記文字キーへの入力により生成された文字列を前記キャンセルキーで削除する操作に基づき、直近で前記キャンセルキーで削除された文字を記憶させる第１文字取得ステップと、
前記第１記憶ステップで記憶させた文字よりも前に前記キャンセルキーで削除された文字列を記憶させる第２文字取得ステップと、
前記第１記憶ステップで記憶させた文字を置換する置換文字を抽出する置換文字抽出ステップと、
前記置換文字と、前記第２文字取得ステップで記憶させた文字とに基づき予測変換を行って単語を抽出する予測変換ステップと、
前記予測変換ステップで抽出した前記単語を表示部に表示させる表示制御ステップと、
を有する、入力文字列予測方法。
【請求項８】
文字が割り当てられる文字キー、及び前記文字キーへの入力で生成される文字列に含まれる文字を削除するキャンセルキーを有する入力部への入力に基づき単語を予測する文字列予測方法をコンピュータに実行させるプログラムであって、
前記文字キーへの入力により生成された文字列を前記キャンセルキーで削除する操作に基づき、直近で前記キャンセルキーで削除された文字を記憶させる第１文字取得ステップと、
前記第１記憶ステップで記憶させた文字よりも前に前記キャンセルキーで削除された文字列を記憶させる第２文字取得ステップと、
前記第１記憶ステップで記憶させた文字を置換する置換文字を抽出する置換文字抽出ステップと、
前記置換文字と、前記第２文字取得ステップで記憶させた文字とに基づき予測変換を行って単語を抽出する予測変換ステップと、
前記予測変換ステップで抽出した前記単語を表示部に表示させる表示制御ステップと、
を、前記コンピュータに実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力文字列予測装置、入力文字列予測方法及びプログラムに関する。
【背景技術】
【０００２】
キーボードやタッチパネルなどの入力装置で文字入力された際に、ユーザが入力しようとしている単語を予測する予測変換の技術がある。予測変換によると、単語に含まれる全ての文字を入力することなく、単語の表示が可能となる。しかし、予測変換は、入力された文字に基づき単語を予測するため、入力された文字が誤っている場合は適切に単語を予測することができない。それに対し、特許文献１では、入力されたキーの周辺のキーに割り当てられる文字に基づき予測変換を行うことで、入力ミスがあった場合にも予測変換を可能とする旨が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−４７８７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１は、削除操作により削除された文字列から入力ミスを起こした文字を特定することで予測変換の精度を高くする余地が残されていた。
【０００５】
本発明は、上記課題を鑑み、予測変換の精度を高くすることができる入力文字列予測装置、入力文字列予測方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様にかかる入力文字列予測装置は、文字が割り当てられる文字キー、及び前記文字キーへの入力で生成される文字列に含まれる文字を削除するキャンセルキーを有する入力部と、文字を記憶する第１記憶部及び第２記憶部を有する記憶部と、前記入力部への入力に基づき単語を予測する制御部と、文字を表示する表示部と、を備え、前記制御部は、前記文字キーへの入力により生成された文字列を前記キャンセルキーで削除する操作に基づき、直近で前記キャンセルキーで削除された文字を第１記憶部に記憶させる第１文字取得部と、前記第１記憶部に記憶させた文字よりも前に前記キャンセルキーで削除された文字列を前記第２記憶部に記憶させる第２文字取得部と、前記第１記憶部に記憶させた文字を置換する置換文字を抽出する置換文字抽出部と、前記置換文字と、前記第２記憶部に記憶させた文字とに基づき予測変換を行って単語を抽出する予測変換部と、前記予測変換部が抽出した前記単語を前記表示部に表示させる表示制御部と、を有する。
【０００７】
本発明の一態様にかかる文字列予測方法は、文字が割り当てられる文字キー、及び前記文字キーへの入力で生成される文字列に含まれる文字を削除するキャンセルキーを有する入力部への入力に基づき単語を予測する文字列予測方法であって、前記文字キーへの入力により生成された文字列を前記キャンセルキーで削除する操作に基づき、直近で前記キャンセルキーで削除された文字を記憶させる第１文字取得ステップと、前記第１記憶ステップで記憶させた文字よりも前に前記キャンセルキーで削除された文字列を記憶させる第２文字取得ステップと、前記第１記憶ステップで記憶させた文字を置換する置換文字を抽出する置換文字抽出ステップと、記置換文字と、前記第２文字取得ステップで記憶させた文字とに基づき予測変換を行って単語を抽出する予測変換ステップと、前記予測変換ステップで抽出した前記単語を表示部に表示させる表示制御ステップと、を有する。
【０００８】
本発明の一態様にかかるプログラムは、文字が割り当てられる文字キー、及び前記文字キーへの入力で生成される文字列に含まれる文字を削除するキャンセルキーを有する入力部への入力に基づき単語を予測する文字列予測方法をコンピュータに実行させるプログラムであって、前記文字キーへの入力により生成された文字列を前記キャンセルキーで削除する操作に基づき、直近で前記キャンセルキーで削除された文字を記憶させる第１文字取得ステップと、前記第１記憶ステップで記憶させた文字よりも前に前記キャンセルキーで削除された文字列を記憶させる第２文字取得ステップと、前記第１記憶ステップで記憶させた文字を置換する置換文字を抽出する置換文字抽出ステップと、前記置換文字と、前記第２文字取得ステップで記憶させた文字とに基づき予測変換を行って単語を抽出する予測変換ステップと、前記予測変換ステップで抽出した前記単語を表示部に表示させる表示制御ステップと、を、前記コンピュータに実行させる。
【発明の効果】
【０００９】
本発明によれば、予測変換の精度を高くすることができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、本実施形態に係る入力文字列予測装置の模式的なブロック図である。
【図２】図２は、入力部の一例を示す図である。
【図３】図３は、表示される文字と記憶される文字との一例を示す模式図である。
【図４】図４は、表示される文字と記憶される文字との一例を示す模式図である。
【図５】図５は、表示される文字と記憶される文字との一例を示す模式図である。
【図６】図６は、表示される文字と記憶される文字との一例を示す模式図である。
【図７】図７は、表示される文字と記憶される文字との一例を示す模式図である。
【図８】図８は、合成文字列の生成の一例を説明する図である。
【図９】図９は、候補単語の表示の一例を説明する模式図である。
【図１０】図１０は、候補単語の表示の一例を説明する模式図である。
【図１１】図１１は、入力文字列予測装置による処理を説明するフローチャートである。
【図１２】図１２は、予測変換処理の処理フローを説明するフローチャートである。
【図１３】図１３は、候補単語の抽出処理の他の例を示すフローチャートである。
【００１１】
以下に、本発明の実施形態を図面に基づいて詳細に説明する。なお、以下に説明する実施形態により本発明が限定されるものではない。
【００１２】
図１は、本実施形態に係る入力文字列予測装置の模式的なブロック図である。本実施形態に係る入力文字列予測装置１は、入力部１０へのユーザの入力によって生成される文字に基づき、ユーザが入力しようとしている単語を予測する装置である。入力文字列予測装置１は、本実施形態では、文字入力が可能な機能を備える装置、ここではコンピュータである。入力文字列予測装置１は、例えば、デスクトップ型のコンピュータ、ラップトップ型のコンピュータ、タブレット端末及びスマートフォンなどの携帯端末などである。
【００１３】
なお、以下の説明において、文字とは、数字及び記号も含む。また、文字列とは、１つ又は複数の文字が並んだ１群の文字を指す。また、単語とは、意味をなす文字列を指し、例えば辞書などで意味が記載されている文字列を指す。
【００１４】
図１に示すように、入力文字列予測装置１は、入力部１０と、表示部１２と、記憶部１４と、制御部１６とを有する。図２は、入力部の一例を示す図である。図２に示すように、入力部１０は、本実施形態では、キーボードである。入力部１０は、複数の文字キー１０Ａ、キャンセルキー１０Ｂ、スペースキー１０Ｃ、エンターキー１０Ｄを備える。文字キー１０Ａは、文字が割り当てられるキーである。すなわち、ユーザが文字キー１０Ａを操作（入力）することで、その文字キー１０Ａに割り当てられた文字が、入力文字列予測装置１に入力され、表示部１２に表示される。文字キー１０Ａは、二次元マトリクス状に並んでいる。キャンセルキー１０Ｂは、文字キー１０Ａへの入力で生成された文字を削除する機能が割り当てられているキーである。すなわち、ユーザがキャンセルキー１０Ｂを操作（入力）することで、文字キー１０Ａへの入力によって表示部１２に表示された文字が、削除される。キャンセルキー１０Ｂは、本実施形態では、バックスペースキーである。従って、キャンセルキー１０Ｂが入力されると、文字キー１０Ａへの入力で生成されて表示部１２に表示されている文字列に含まれる最後尾の文字が、削除される。さらに言えば、表示部１２には、表示されている文字列の文字の並びにおいて、文字列に含まれる文字（ここでは末尾の文字）の直後に、カーソルＣ（図３参照）が割り当てられている。この場合、キャンセルキー１０Ｂは、表示されている文字列での文字の並びにおいて、カーソルＣの直前の文字を削除するともいえる。
【００１５】
スペースキー１０Ｃは、表示部１２の文字の並びにおいて、文字入力することなくカーソルＣを後ろ側に動かすためのキーである。エンターキー１０Ｄは、文字入力を決定したりするなどの、決定キーであり、文章において改行を行う機能も割り当てられている。なお、図２の例では、文字キー１０Ａ、キャンセルキー１０Ｂ、スペースキー１０Ｃ、エンターキー１０Ｄは、ユーザの押圧により入力を受け付ける物理ボタンであったが、ユーザのタッチや近接により入力を受け付けるタッチパネルであってもよい。また、入力部１０におけるキー（文字キー１０Ａ、キャンセルキー１０Ｂ、スペースキー１０Ｃ、エンターキー１０Ｄなど）の配列は、一例であり、任意の配列であってよい。また、入力部１０は、マウスなどを含んでいてもよい。
【００１６】
図１に戻り、表示部１２は、入力部１０に入力された文字などを表示するディスプレイである。表示部１２は、入力部１０と一体になっていてもよい。
【００１７】
記憶部１４は、制御部１６の演算内容やプログラムの情報などを記憶するメモリであり、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）と、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの外部記憶装置とのうち、少なくとも１つ含む。また、記憶部１４は、表示文字記憶部２０と、第１記憶部２２と、第２記憶部２４と、文書記憶部２６とを含む。表示文字記憶部２０と、第１記憶部２２と、第２記憶部２４と、文書記憶部２６とは、それぞれ文字を記憶するが、詳細は後述する。なお、本実施形態では、表示文字記憶部２０と、第１記憶部２２と、第２記憶部２４と、文書記憶部２６とは、記憶対象が異なるが互いに同じハードウェアであり、言い換えれば、異なるメモリ領域が割り当てられているものである。ただし、表示文字記憶部２０と、第１記憶部２２と、第２記憶部２４と、文書記憶部２６とは、互いに異なるハードウェアであってもよい。
【００１８】
制御部１６は、演算装置、すなわちＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。本実施形態では、制御部１６は、入力部１０への入力により生成される単語を予測する。制御部１６は、表示文字取得部３０と、第１文字取得部３２と、第２文字取得部３４と、置換文字抽出部３６と、予測変換部３８と、表示制御部４０とを有する。表示文字取得部３０と、第１文字取得部３２と、第２文字取得部３４と、置換文字抽出部３６と、予測変換部３８と、表示制御部４０とは、制御部１６が記憶部１４に記憶されたソフトウェア（プログラム）を読み出すことで実現されて、後述する処理を実行する。
【００１９】
図３から図７は、表示される文字と記憶される文字との一例を示す模式図である。図３の例では、ユーザがｃｏｎｇｒａｔｕｒａｔｉｏｎｓという単語を入力しようとしているのに対し、ｇをｆに入力ミスして、ｃｏｎｆｒａｔという文字列Ｓ０が入力された例を示している。そして、図４から図７は、キャンセルキー１０Ｂを入力して、文字列Ｓ０の末尾の文字を一つずつ削除した例を示している。
【００２０】
表示文字取得部３０は、文字キー１０Ａ及びキャンセルキー１０Ｂがユーザにより入力（操作）されたかの情報を取得する。さらに、表示文字取得部３０は、複数の文字キー１０Ａのうちのどの文字キー１０Ａが入力されたかの情報も取得する。例えば、表示文字取得部３０は、文字キー１０Ａ及びキャンセルキー１０Ｂが操作された際に生成する電気信号を取得して、その電気信号に基づき、どの文字キー１０Ａが操作されたかの情報や、キャンセルキー１０Ｂが操作されたかの情報を取得する。
【００２１】
表示文字取得部３０は、文字キー１０Ａへのユーザの入力に基づき、すなわち、どの文字キー１０Ａが操作されたかの情報に基づき、ユーザに入力された文字が何であるかを判断する。表示文字取得部３０は、ユーザに操作された文字キー１０Ａに割り当てられた文字を、ユーザに入力された文字であると判断する。表示文字取得部３０は、ユーザに入力されたと判断した文字を、表示文字記憶部２０に記憶させる。また、後述の表示制御部４０は、表示文字記憶部２０に記憶された文字、すなわちユーザに入力されたと判断された文字を、表示部１２に表示させる。
【００２２】
また、表示文字記憶部２０に文字が記憶されている状態で、ユーザが文字キー１０Ａを操作した場合、表示文字取得部３０は、表示文字記憶部２０に記憶されている文字の次にユーザが入力した文字を並べて文字列とし、表示文字記憶部２０にその文字列を記憶させる。表示文字記憶部２０に文字列が記憶されている場合は、文字列における末尾の文字の次に、ユーザが入力した文字を並べる。すなわち、表示文字記憶部２０にｃｏｎｆｒａという文字列が記憶されていた場合に、ユーザがｔを入力すると、表示文字取得部３０は、図３に示すように、ｃｏｎｆｒａという文字列の末尾の文字ａの次にｔを配列させて、ｃｏｎｆｒａｔという文字列を、表示文字記憶部２０に記憶させる。
【００２３】
さらに言えば、表示文字取得部３０は、表示文字記憶部２０に、１つの文字列のみを記憶させ、複数の文字列を記憶させない。例えば、表示文字取得部３０は、文字キー１０Ａが連続して操作された場合に、それらの連続して入力された文字キー１０Ａに割り当てられた文字、すなわち連続して入力された文字を、１つの文字列とする。そして、文字キー１０Ａの入力の後に、ユーザによって入力部１０に所定の操作（スペースキー１０Ｃやエンターキー１０Ｄへの入力など）がなされた場合には、表示文字取得部３０は、その所定の操作までに入力された文字を、１つの文字列として確定し、その後に入力された文字は、別の文字列に属するものとする。図３の例では、文字列Ｓｘの最後の文字Ｍの入力の後に、スペースキー１０Ｃが入力され、その後に、ｃ、ｏ、ｎ、ｆ、ｒ、ａ、ｔの順で連続して文字が入力されている。従って、ｃ、ｏ、ｎ、ｆ、ｒ、ａ、ｔのそれぞれの文字が、ｃｏｎｆｒａｔとして、文字列ＳＸとは異なる１つの文字列となっている。
【００２４】
表示文字取得部３０は、このように、表示文字記憶部２０に１つの文字列のみを記憶させる。一方、表示部１２には、表示文字記憶部２０に記憶されている文字列に加え、表示文字記憶部２０に記憶されている文字列よりも前に入力された文字列（図３の例では文字列Ｓｘ）が、表示される。このように複数の文字列を含んだ情報は、文章として、文書記憶部２６に記憶される。
【００２５】
また、表示文字取得部３０は、キャンセルキー１０Ｂへのユーザの入力がある場合、すなわち、キャンセルキー１０Ｂが操作された情報を取得した場合、表示文字記憶部２０に記憶されている１つの文字を削除（消去）する。より詳しくは、表示文字取得部３０は、キャンセルキー１０Ｂが入力されると、表示文字記憶部２０に記憶されている文字列に含まれる末尾の文字を、表示文字記憶部２０に記憶されている文字列から削除（消去）する。従って、表示文字記憶部２０に記憶されている文字は、文字キー１０Ａへの入力により入力された文字であって、かつ、キャンセルキー１０Ｂへの入力により削除されていない文字であるといえる。例えば、図３の状態でキャンセルキー１０Ｂが入力されると、表示文字取得部３０は、図４に示すように、表示文字記憶部２０に記憶されているｃｏｎｆｒａｔという文字列から、末尾の文字ｔを削除する。これにより、図４に示すように、表示文字記憶部２０に記憶されている文字列Ｓ０は、ｃｏｎｆｒａとなる。また、表示部１２に表示される文字列Ｓ０も、表示文字記憶部２０に記憶されている文字列と同様に、ｃｏｎｆｒａとなる。なお、文字列における末尾の文字とは、表示されている文字列での文字の並びにおいて、カーソルＣの直前の文字であるともいえる。
【００２６】
このように、表示文字取得部３０は、文字キー１０Ａ及びキャンセルキー１０Ｂへの入力に基づき、文字キー１０Ａにより入力された文字であってキャンセルキー１０Ｂにより削除されていない文字を、表示文字記憶部２０に記憶させる。
【００２７】
なお、表示文字取得部３０は、キャンセルキー１０Ｂが入力された場合には、１つの文字列であるとの確定を行わずに、連続して入力された文字であるとの判定を続ける。すなわち、表示文字取得部３０は、キャンセルキー１０Ｂが入力されて文字を削除した後に、再度文字キー１０Ａが入力された場合、その文字キー１０Ａの入力による文字を、キャンセルキー１０Ｂが入力される前に入力された文字と同じ文字列とする。例えば、図４のようにｔが削除された後に、例えばｃが入力されたら、ｃｏｎｆｒａｃが１つの文字列とされる。
【００２８】
第１文字取得部３２は、キャンセルキー１０Ｂへの入力に基づき、文字キー１０Ａにより入力された文字であって、直近でのキャンセルキー１０Ｂへの入力により削除される文字を、第１記憶部２２に記憶させる。第１文字取得部３２は、第１記憶部２２が文字を記憶している状態で、さらにキャンセルキー１０Ｂが入力された場合には、第１記憶部２２が記憶している文字を、今回キャンセルキー１０Ｂの入力により削除される文字に置き換えて（上書きして）、第１記憶部２２に記憶させる。すなわち、第１文字取得部３２は、第１記憶部２２に複数の文字を同時に記憶させず、同時に記憶させる文字の数を、１つとする。図４の例では、図３のｃｏｎｆｒａｔという文字列Ｓ０からｔが削除されているため、ｔが直近に削除される文字となり、第１文字取得部３２は、ｔという文字Ｓ１を、第１記憶部２２に記憶させる。また、図５は、図４の状態からさらにキャンセルキー１０Ｂが入力された例を示している。従って、図５では、図４のｃｏｎｆｒａという文字列Ｓ０からａが削除され、ｃｏｎｆｒという文字列Ｓ０が、表示文字記憶部２０に記憶される。そして、図５では、直近に削除された文字がａとなるため、第１文字取得部３２は、第１記憶部２２に記憶させる文字Ｓ１を、それより前に削除されたｔから、直近に削除されたａに置き換える。
【００２９】
第２文字取得部３４は、文字キー１０Ａにより入力された文字であって、第１記憶部２２に記憶させた文字よりも前にキャンセルキー１０Ｂによって削除された文字を、第２記憶部２４に記憶させる。さらに言えば、第２文字取得部３４は、第１記憶部２２に文字が記憶されている状態で、キャンセルキー１０Ｂの入力がある場合に、第１記憶部２２において直近に削除される文字と置換された文字（置換される前に第１記憶部２２に記憶されていた文字）を、第２記憶部２４に記憶させる。また、第２文字取得部３４は、第２記憶部２４に文字を記憶させた状態で、さらにキャンセルキー１０Ｂによって文字が削除される場合には、第２記憶部２４に記憶させた文字列の先頭の文字の前の位置に、第１記憶部２２において直近に削除される文字と置換された文字（置換される前に第１記憶部２２に記憶されていた文字）を並べて記憶する。
【００３０】
例えば、図４においては、第１記憶部２２にｔという文字が記憶されている。そして、図５では、図４の状態、すなわち第１記憶部２２にｔが記憶されている状態で、ｃｏｎｆｒａという文字列Ｓ０からａという文字が削除される。従って、第２文字取得部３４は、第１記憶部２２に記憶されていたｔを取得して、ｔを文字列Ｓ２として第２記憶部２４に記憶させる。また、図５の状態では、上述のように、第１記憶部２２に、直近に削除されたａが文字Ｓ１として記憶される。そして、図６は、図５の状態からさらにキャンセルキー１０Ｂが入力された例を示している。従って、図６では、図５のｃｏｎｆｒという文字列Ｓ０からｒが削除され、ｃｏｎｆという文字列Ｓ０が、表示文字記憶部２０に記憶される。そして、図６では、直近に削除された文字がｒとなるため、第１文字取得部３２は、それより前に削除されたａを、直近に削除されたｒに置き換えて、ｒを文字Ｓ１として第１記憶部２２に記憶させる。さらに、第２文字取得部３４は、第１記憶部２２に記憶されていたａを取得して、第２記憶部２４がすでに記憶していたｔの前の位置にａを並べて、第２記憶部２４に、ａｔを文字列Ｓ２として記憶させる。そして、図７は、図６の状態からさらにキャンセルキー１０Ｂが入力された例を示している。従って、図７では、図６のｃｏｎｆという文字列Ｓ０からｆが削除され、ｃｏｎという文字列Ｓ０が、表示文字記憶部２０に記憶される。そして、図７では、直近に削除された文字がｆとなるため、第１文字取得部３２は、それより前に削除されたｒを、直近に削除されたｆに置き換えて、ｆを文字Ｓ１として第１記憶部２２に記憶させる。さらに、第２文字取得部３４は、第１記憶部２２に記憶されていたｒを取得して、第２記憶部２４がすでに記憶していたａｔの前の位置にｒを並べて、第２記憶部２４に、ｒａｔを文字列Ｓ２として記憶させる。
【００３１】
以下、表示文字記憶部２０に記憶される文字列、すなわち文字キー１０Ａによって入力されたがキャンセルキー１０Ｂによって削除されていない文字列を、表示文字列と記載する。また、第１記憶部２２に記憶される文字、すなわちキャンセルキー１０Ｂによって直近に削除された文字を、第１文字と記載する。そして、第２記憶部２４に記憶される文字列、すなわち第１記憶部２２に記憶させた文字よりも前にキャンセルキー１０Ｂによって削除された文字列を、第２文字列と記載する。
【００３２】
図２に戻り、置換文字抽出部３６は、第１記憶部２２に記憶される第１文字に対して置換する文字である置換文字を抽出する。すなわち、置換文字抽出部３６は、キャンセルキー１０Ｂによって直近に削除された文字に対して、置換する文字を抽出する。置換文字抽出部３６は、第１記憶部２２に記憶される第１文字に基づき、置換文字を抽出するものであり、第１記憶部２２に記憶される第１文字に関連が高い文字を、置換文字として抽出する。本実施形態では、置換文字抽出部３６は、第１文字が割り当てられた文字キー１０Ａの周囲にある文字キー１０Ａに割り当てられている文字を、置換文字として抽出する。第１文字が割り当てられた文字キー１０Ａの周囲にある文字キー１０Ａとは、例えば、第１文字が割り当てられた文字キー１０Ａの周囲であり、かつ、所定距離以内にある文字キー１０Ａであってよいし、第１文字が割り当てられた文字キー１０Ａに隣接する文字キー１０Ａであってもよい。置換文字抽出部３６は、複数の置換文字を抽出してよい。例えば、第１文字がｆである場合、置換文字抽出部３６は、ｆの周囲にあるｒ、ｄ、ｃ、ｖ、ｇ、ｔ（図２参照）を、置換文字として抽出する。ただし、置換文字の抽出方法は、これに限られず任意であり、第１記憶部２２に記憶される第１文字に対して所定の関係を有する文字を、置換文字とすればよい。
【００３３】
予測変換部３８は、置換文字抽出部３６が抽出した置換文字と、第２記憶部２４に記憶される第２文字列と、に基づき予測変換を行って、ユーザが入力しようとしている単語の候補となる候補単語を抽出する。さらに言えば、予測変換部３８は、表示文字記憶部２０に記憶される表示文字列と、置換文字抽出部３６が抽出した置換文字と、第２記憶部２４に記憶される第２文字列と、に基づき予測変換を行って、候補単語を抽出する。以下、具体的に説明する。
【００３４】
予測変換部３８は、文字列生成部５０と、単語抽出部５２とを有する。文字列生成部５０は、表示文字記憶部２０に記憶される表示文字列と、置換文字抽出部３６が抽出した置換文字と、第２記憶部２４に記憶される第２文字列と、に基づき、合成文字列を生成する。文字列生成部５０は、表示文字列と置換文字と第２文字列とを１つの文字列として並べることで、合成文字列を生成する。より詳しくは、文字列生成部５０は、文字列の並びにおいて、表示文字列の末尾の文字の次に置換文字を配置し、置換文字の次に第２文字列を配置させることで、合成文字列を生成する。言い換えれば、合成文字列は、表示文字列の次の文字が置換文字であり、置換文字の次の文字列が第２文字列となった文字列である。置換文字が複数ある場合、文字列生成部５０は、置換文字ごとに、合成文字列を生成する。
【００３５】
図８は、合成文字列の生成の一例を説明する図である。図８は、図７の状態、すなわち、表示文字記憶部２０に記憶される文字列Ｓ０（表示文字列）がｃｏｎで、第１記憶部２２に記憶される文字Ｓ１（第１文字）がｆで、第２記憶部２４に記憶される文字列Ｓ２（第２文字列）がｒａｔである状態において、合成文字列を生成する場合の例を説明している。第１文字がｆであるため、図８の例では、置換文字である文字Ｓ１ａは、ｒ、ｄ、ｃ、ｖ、ｇ、ｔとなっている。この場合、文字列生成部５０は、ｃｏｎの次にｒが並び、ｒの次にｒａｔが並んだｃｏｎｒｒａｔを、合成文字列として生成する。置換文字が複数ある場合、文字列生成部５０は、置換文字ごとに合成文字列を生成するため、合成文字列として、ｃｏｎｄｒａｔ、ｃｏｎｃｒａｔ、ｃｏｎｖｒａｔ、ｃｏｎｇｒａｔ、ｃｏｎｔｒａｔも、生成する。
【００３６】
単語抽出部５２は、合成文字列に基づき、候補単語を抽出する。すなわち、単語抽出部５２は、合成文字列を用いて予測変換を行って、合成文字列に関連する単語を、候補単語として抽出する。本実施形態では、単語抽出部５２は、合成文字列と前方部分一致する単語を、候補単語として抽出する。すなわち、単語抽出部５２は、合成文字列で構成される単語、又は、合成文字列の後に文字列が並んで構成される単語を、候補単語として抽出する。なお、単語抽出部５２は、例えば記憶部１４に記憶されている単語から、合成文字列と前方部分一致する単語を候補単語として抽出してもよいし、外部サーバにアクセスして、成文字列と前方部分一致する単語を候補単語として取得してもよい。単語抽出部５２は、合成文字列が複数ある場合、すなわち置換文字が複数ある場合は、それぞれの合成文字列に対し、候補単語を抽出する。すなわち、単語抽出部５２は、それぞれの合成文字列に対し、前方部分一致する単語を検索して、候補単語を抽出する。図８の例では、単語抽出部５２は、ｃｏｎｒｒａｔ、ｃｏｎｄｒａｔ、ｃｏｎｃｒａｔ、ｃｏｎｖｒａｔ、ｃｏｎｇｒａｔ、ｃｏｎｔｒａｔのそれぞれの合成文字列に対し、前方部分一致する単語を検索して、前方部分一致する単語を候補単語とする。図８の例では、ｃｏｎｇｒａｔという合成文字列に対し、ｃｏｎｇｒａｔｕｒａｔｉｏｎｓと、ｃｏｎｇｒａｔｓという候補単語Ｗが抽出される。
【００３７】
図９及び図１０は、候補単語の表示の一例を説明する模式図である。図１に戻り、表示制御部４０は、単語抽出部５２が抽出した候補単語を、表示部１２に表示させる。ユーザが表示部１２に表示される候補単語を選択した場合、表示制御部４０は、選択された候補単語を文書記憶部２６に記憶させ、候補単語を表示部１２に表示させる。さらに言えば、表示制御部４０は、表示部１２に表示されている表示文字列に置換して、候補単語を表示させる。図９の例では、表示制御部４０が、図８のように抽出された候補単語Ｗを、表示部１２に表示させている状態を示している。候補単語Ｗは、文字列Ｓ０（表示文字列）と共に表示部１２に表示される。この状態において、候補単語Ｗがユーザに選択されると、図１０のように、文字列Ｓ０の代わりに、候補単語Ｗが、確定された単語（文字列）として、表示部１２に表示される。なお、図１０は、ｃｏｎｇｒａｔｕｒａｔｉｏｎｓが選択された例を示している。
【００３８】
入力文字列予測装置１は、以上のような構成となっている。なお、図８から図１０の例では、図７の状態、すなわちｆが削除された状態において、予測変換、すなわち候補単語の抽出を行う例を示しているが、入力文字列予測装置１は、キャンセルキー１０Ｂが入力されたことをトリガとして、予測変換を行う。従って、例えば、図７の状態だけでなく、図６の状態においても予測変換を行ってよい。
【００３９】
このように、本実施形態に係る入力文字列予測装置１は、表示部１２から削除されずに残っている表示文字列と、直近で削除された第１文字に置換された置換文字と、第１文字より前に削除された第２文字列とを合成文字列として、その合成文字列に基づき、候補単語を抽出している。すなわち、入力文字列予測装置１は、直近で削除された第１文字がユーザの誤入力による文字であると判断して、第１文字を置換文字に置き換えた上で、それより前に削除された第２文字列は誤入力されていないとして、候補単語を抽出している。入力文字列予測装置１は、第２文字列を含めて予測変換を行うことにより、候補単語の抽出精度を高くすることができる。例えば、本実施形態では、図８の状態で、第２文字列を含めずに予測変換を行った場合、表示文字列であるｃｏｎや、表示文字列と置換文字とを含む文字列（ｃｏｎｇなど）のみで予測変換を行うため、ユーザが入力したい単語に類似しない単語も含めて、候補単語の数が多くなってしまう。一方、本実施形態に係る入力文字列予測装置１は、第２文字列まで含めた合成文字列による予測変換を行うため、ｃｏｎｇｒａｔｕｒａｔｉｏｎｓと、ｃｏｎｇｒａｔｓという、ユーザが入力したい単語に近い単語まで数を絞った単語を、候補単語として抽出することができ、候補単語の抽出精度を高くすることができる。
【００４０】
次に、入力文字列予測装置１による予測変換処理のフローを、フローチャートに基づき説明する。図１１は、入力文字列予測装置による処理を説明するフローチャートである。入力文字列予測装置１は、入力部１０にユーザの入力があることをトリガとして、処理を開始する。入力文字列予測装置１は、入力部１０に入力がある場合（ステップＳ１０）、その入力がキャンセルキー１０Ｂへの入力であるかを判断する（ステップＳ１２）。キャンセルキー１０Ｂへの入力である場合（ステップＳ１２；Ｙｅｓ）、入力文字列予測装置１は、予測変換処理を実行する（ステップＳ１４）。予測変換処理は、合成文字列に基づき候補単語を抽出して、候補単語を表示部１２に表示させる処理であるが、処理フローについては後述する。
【００４１】
キャンセルキー１０Ｂへの入力でない場合（ステップＳ１２；Ｎｏ）、入力文字列予測装置１は、入力部１０への入力により候補単語が選択されているかを判断する（ステップＳ１６）。すなわち、入力文字列予測装置１は、入力部１０への入力が、表示部１２に表示されている候補単語を選択する操作であるかを判断する。候補単語が選択されている場合（ステップＳ１６；Ｙｅｓ）、入力文字列予測装置１は、表示文字記憶部２０、第１記憶部２２、及び第２記憶部２４の記憶内容を消去し（ステップＳ１８）、選択された候補単語を文書記憶部２６に記憶させて、表示部１２に表示させる（ステップＳ２０）。候補単語が選択された場合には、入力中の文字列が選択された候補単語に確定されるため、候補単語の抽出のために記憶していた、表示文字記憶部２０、第１記憶部２２、及び第２記憶部２４の記憶内容が消去される。具体的には、候補単語が選択されたら、表示文字取得部３０が、表示文字記憶部２０に記憶されている表示文字列を削除し、第１文字取得部３２が第１記憶部２２に記憶されている第１文字を削除し、第２文字取得部３４が第２記憶部２４に記憶されている第２文字列を削除することで、記憶内容をリセットする。そして、表示制御部４０が、表示部１２に表示されている表示文字列の代わりに、選択された候補単語を表示させる。
【００４２】
候補単語が選択されていない場合（ステップＳ１６；Ｎｏ）、すなわち、入力部１０への入力が文字キー１０Ａの入力である場合、入力文字列予測装置１は、第１記憶部２２、及び第２記憶部２４の記憶内容を消去し（ステップＳ２２）、入力された文字を表示文字記憶部２０に記憶させて、表示部１２に表示させる（ステップＳ２４）。文字キー１０Ａに入力がある場合、第１文字取得部３２が第１記憶部２２に記憶されている第１文字を削除し、第２文字取得部３４が第２記憶部２４に記憶されている第２文字列を削除することで、記憶内容をリセットする。そして、表示文字取得部３０は、入力された文字キー１０Ａに割り当てられている文字を、表示文字列として表示文字記憶部２０に記憶させ、表示制御部４０は、入力された文字キー１０Ａに割り当てられている文字を、表示部１２に表示させる。
【００４３】
なお、入力文字列予測装置１は、ステップＳ２４において文字が表示されたことをトリガとして、予測変換を行ってもよい。この場合、第１記憶部２２と第２記憶部２４の記憶内容は消去されているため、入力文字列予測装置１は、表示文字記憶部２０に記憶されている表示文字列のみに基づき、予測変換を行う。例えば、入力文字列予測装置１は、表示文字列に前方部分一致する単語を抽出し、抽出した単語を表示部１２に表示させる。
【００４４】
次に、図１１で示したステップＳ１４の予測変換処理の処理フローを説明する。図１２は、予測変換処理の処理フローを説明するフローチャートである。図１２に示す予測変換処理は、キャンセルキー１０Ｂが入力されたことをトリガとして実施される。図１２に示すように、第１記憶部２２に文字（第１文字）が記憶されていない場合（ステップＳ３２：Ｎｏ）、すなわちキャンセルキー１０Ｂが連続して入力されずに最初に入力された場合、第１文字取得部３２は、キャンセルキー１０Ｂの入力により削除される文字を、第１文字として第１記憶部２２に記憶させる（ステップＳ３２）。
【００４５】
一方、第１記憶部２２に文字（第１文字）が記憶されている場合（ステップＳ３２：Ｙｅｓ）、すなわちキャンセルキー１０Ｂが連続して入力されて第１記憶部２２に第１文字がすでに記憶されている場合、第２文字取得部３４は、第１記憶部２２に記憶されている文字を、第２文字列として第２記憶部２４に記憶させる（ステップＳ３４）。そして、ステップＳ３４の後に、第１文字取得部３２は、第１記憶部２２に記憶されている文字を、キャンセルキー１０Ｂの入力により削除される文字に置き換えて、キャンセルキー１０Ｂの入力により削除される文字を、第１文字として第１記憶部２２に上書きして記憶させる（ステップＳ３６）。すなわち、この場合、第１記憶部２２に記憶されている文字を上書きする前に、第１記憶部２２に記憶されている文字を第２記憶部２４に記憶させる。
【００４６】
ステップＳ３２又はステップＳ３６を実行したら、表示文字取得部３０は、表示文字記憶部２０から、キャンセルキー１０Ｂの入力により削除される文字を削除する（ステップＳ３８）。すなわち、表示文字取得部３０は、表示文字記憶部２０に記憶されている表示文字列から、キャンセルキー１０Ｂの入力により削除される文字を削除する。表示文字列からキャンセルキー１０Ｂの入力により削除される文字を削除した後、表示文字取得部３０は、表示文字記憶部２０に文字が記憶されているかを判断する（ステップＳ４０）。すなわち、表示文字取得部３０は、表示文字記憶部２０に表示文字列が残っているか、言い換えれば、表示文字記憶部２０から全ての文字が削除されていないかを判断する。表示文字記憶部２０に文字が記憶されている場合（ステップＳ４０；Ｙｅｓ）、置換文字抽出部３６は、第１記憶部２２に記憶されている第１文字から、置換文字を抽出する（ステップＳ４２）。そして、文字列生成部５０は、表示文字記憶部２０に記憶される表示文字列と、置換文字抽出部３６が抽出した置換文字と、第２記憶部２４に記憶される第２文字列と、に基づき、合成文字列を生成する（ステップＳ４４）。そして、単語抽出部５２は、合成文字列に基づき、候補単語を抽出する（ステップＳ４６）。表示制御部４０は、単語抽出部５２が抽出した候補単語を、表示部１２に表示させる（ステップＳ４８）。
【００４７】
一方、表示文字記憶部２０に文字が記憶されていない場合（ステップＳ４０；Ｎｏ）、すなわち表示文字記憶部２０から全ての文字が削除された場合、入力文字列予測装置１は、予測変換処理を行わず、表示文字記憶部２０、第１記憶部２２、及び第２記憶部２４の記憶内容を消去して（ステップＳ５０）、本処理を終了する。すなわち、入力文字列予測装置１は、表示文字列から全ての文字が削除された場合には、予測変換処理を行わず、表示文字記憶部２０、第１記憶部２２、及び第２記憶部２４に記憶されている内容をリセットして、次の文字入力を待つ。
【００４８】
ただし、表示文字記憶部２０から全ての文字が削除された場合（ステップＳ４０；Ｎｏの場合）にも、予測変換処理を行ってもよい。この場合、直近で削除された文字、すなわち表示文字列の先頭の文字が第１文字となり、置換文字抽出部３６は、その第１文字の置換文字を抽出し、文字列生成部５０は、その置換文字の次に第２記憶部２４の第２文字列を並べて、合成文字列を生成して、単語抽出部５２は、その合成文字列に基づき候補単語を抽出する。
【００４９】
ここで、上記の説明では、文字列生成部５０は、第２記憶部２４に記憶される第２文字列に含まれる全ての文字を使用して、合成文字列を生成していた。すなわち、図８の例では、第２記憶部２４に記憶されているｒａｔという文字列の全ての文字を合成文字列に含ませていた。ただし、第２文字列に含まれる全ての文字を含めた合成文字列から、候補単語が抽出できない場合は、第２文字列に含まれる文字を減らして合成文字列を生成して、候補単語を抽出してもよい。以下、その場合の候補単語の抽出処理について説明する。
【００５０】
図１３は、候補単語の抽出処理の他の例を示すフローチャートである。図１３に示すように、文字列生成部５０は、最初に、第２文字列の除外文字数を、０とする（ステップＳ６０）。削除文字数とは、第２文字列に含まれる文字のうち、合成文字列に加えない文字の数を指す。文字列生成部５０は、第２文字列の末尾から、除外文字数だけ、文字を削除する（ステップＳ６２）。すなわち、除外文字数が０の場合は、第２文字列から文字は削除されない。そして、置換文字抽出部３６は、第１記憶部が記憶する第１文字から置換文字を抽出し（ステップＳ６４）、文字列生成部５０は、表示文字列と置換文字と第２文字列とを連結して、合成文字列を生成する（ステップＳ６６）。すなわち、文字列生成部５０は、表示文字列と置換文字と第２文字列とを１つの文字列として並べることで、合成文字列を生成する。そして、単語抽出部５２は、合成文字列に基づき候補単語を検索（抽出）し（ステップＳ６８）、全ての置換文字で処理済みか（ステップＳ７０）、すなわち全ての置換文字について合成文字列を生成して候補単語を検索したかを判断する。全ての置換文字で処理済みでない場合（ステップＳ７０；Ｎｏ）、すなわち全ての置換文字について合成文字列を生成して候補単語を検索していない場合は、ステップＳ６６に戻り、処理していない置換文字を用いて、候補単語の検索を続ける。一方、全ての置換文字で処理済みである場合（ステップＳ７０；Ｙｅｓ）、すなわち全ての置換文字について合成文字列を生成して候補単語を検索した場合、候補単語が抽出されたか（ステップＳ７２）、すなわち合成文字列に前方部分一致する単語があったかを判断する。候補単語が抽出された場合（ステップＳ７２；Ｙｅｓ）、抽出された候補単語を表示させ（ステップＳ７４）、本処理を終了する。
【００５１】
一方、候補単語が抽出されなかった場合（ステップＳ７２；Ｎｏ）、すなわち生成した合成文字列に前方部分一致する単語が無かった場合、第２文字列の除外文字数に１を加算し（ステップＳ７６）、除外文字数が第２文字列の文字数より多いかを判断する（ステップＳ７８）。除外文字数が第２文字列の文字数より多くない場合（ステップＳ７８；Ｎｏ）、ステップＳ６２に戻り、第２文字列の末尾から、１を加算した除外文字数だけ文字を削除して、その文字を削除した第２文字列で生成した合成文字列に基づき、候補単語の抽出を行う。この場合、例えば図８の例では、第２文字列のｒａｔの末尾から、除外文字数分だけ文字を削除するため、除外文字数が１の場合は、第２文字列がｒａとなり、合成文字列はｃｏｎｒｒａなどになる。そして、除外文字数が２の場合は、第２文字列がｒとなり、合成文字列はｃｏｎｒｒなどになる。このように第２文字列の文字を末尾から削除していくことで、候補単語の検索対象を徐々に広げることができる。なお、除外文字数が第２文字列の文字数より多い場合（ステップＳ７８；Ｙｅｓ）、本処理は終了する。
【００５２】
以上説明したように、本実施形態に係る入力文字列予測装置１は、入力部１０と、表示部１２と、記憶部１４と、制御部１６とを有する。入力部１０は、文字が割り当てられる文字キー１０Ａ、及び文字キー１０Ａへの入力で生成される文字列に含まれる文字を削除するキャンセルキー１０Ｂを有する。表示部１２は、文字を表示する。記憶部１４は、文字を記憶する第１記憶部２２及び第２記憶部２４を有する。制御部１６は、第１文字取得部３２と、第２文字取得部３４と、置換文字抽出部３６と、予測変換部３８と、表示制御部４０とを有する。第１文字取得部３２は、文字キー１０Ａへの入力により生成された文字列をキャンセルキー１０Ｂで削除する操作に基づき、直近でキャンセルキー１０Ｂで削除された文字を、第１記憶部２２に記憶させる。第２文字取得部３４は、第１記憶部２２に記憶させた文字よりも前にキャンセルキー１０Ｂで削除された文字列を、第２記憶部２４に記憶させる。置換文字抽出部３６は、第１記憶部２２に記憶させた文字（第１文字）に置換する置換文字を抽出する。予測変換部３８は、置換文字と、第２記憶部２４に記憶させた文字とに基づき予測変換を行って、候補単語を抽出する。表示制御部４０は、予測変換部３８が抽出した候補単語を、表示部１２に表示させる。この入力文字列予測装置１は、置換文字に加え、第２記憶部２４に記憶させた文字、すなわち第１文字より前に削除された文字（第２文字列）を含めて予測変換を行うことにより、ユーザの入力ミスがあった場合にも、予測変換の精度を高くすることができる。
【００５３】
制御部１６は、さらに表示文字取得部３０を有する。表示文字取得部３０は、文字キー１０Ａ及びキャンセルキー１０Ｂへの入力に基づき、文字キー１０Ａにより入力された文字であってキャンセルキー１０Ｂにより削除されていない文字を、記憶部１４が有する表示文字記憶部２０に記憶させる。予測変換部３８は、表示文字記憶部２０に記憶させた文字（表示文字列）と、置換文字と、第２記憶部２４に記憶させた文字（第２文字列）とに基づき予測変換を行って単語を抽出する。この入力文字列予測装置１は、削除されていない表示文字列と、置換文字と、第１文字より前に削除された文字（第２文字列）を含めて予測変換を行うことにより、予測変換の精度を高くすることができる。
【００５４】
また、予測変換部３８は、文字列生成部５０と、単語抽出部５２とを有する。文字列生成部５０は、表示文字記憶部２０に記憶させた末尾の文字の次に置換文字を配置し、置換文字の次に第２記憶部２４に記憶させた文字を配置した合成文字列を生成する。単語抽出部５２は、合成文字列に基づき候補単語を抽出する。この入力文字列予測装置１は、表示文字列と置換文字と第２文字列とを並べて合成文字列を生成し、その合成文字列に基づき予測変換を行うため、予測変換の精度を高くすることができる。
【００５５】
なお、本実施形態では、第１記憶部２２に記憶させた直近で削除した文字のみを置換文字に置換し、それより前に削除した第２記憶部２４に記憶した第２文字列は、そのまま用いて予測変換を行っている。ただし、入力文字列予測装置１は、第２記憶部２４に記憶した第２文字列についても置換文字に置換して、予測変換を行ってもよい。すなわち、入力文字列予測装置１は、第１文字の置換文字と、第２文字列の置換文字とを合成文字列として、候補単語を抽出してもよい。
【００５６】
また、単語抽出部５２は、合成文字列と前方部分一致する単語を、候補単語として抽出する。この入力文字列予測装置１は、合成文字列に前方部分一致する単語を抽出するため、ユーザが入力したい単語を適切に予測表示することができる。
【００５７】
また、表示文字取得部３０は、キャンセルキー１０Ｂが入力された場合に、表示文字記憶部２０に記憶させた表示文字列に含まれる末尾の文字を、表示文字記憶部２０に記憶させた表示文字列から削除する。この入力文字列予測装置１は、表示文字列の末尾から文字を削除して予測変換を行うため、ユーザの入力ミスがあった場合にも、予測変換の精度を高くすることができる。
【００５８】
予測変換部３８は、キャンセルキー１０Ｂが入力されて文字が削除されたことをトリガとして、予測変換を行って候補単語を抽出する。この入力文字列予測装置１は、キャンセルキー１０Ｂが入力されたことをトリガとして予測変換を行うため、ユーザの入力ミスがあった場合にも、予測変換の精度を高くすることができる。
【００５９】
置換文字抽出部３６は、第１記憶部２２に記憶させた文字（第１文字）に割り当てられる文字キー１０Ａの周囲にある文字キー１０Ａに割り当てられる文字を、置換文字とする。この入力文字列予測装置１は、直近に削除した第１文字の周囲の文字を置換文字とすることで、ユーザの入力ミスがあった場合にも、予測変換の精度を高くすることができる。
【００６０】
以上、本発明の実施形態を説明したが、これら実施形態の内容により実施形態が限定されるものではない。また、前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述した構成要素は適宜組み合わせることが可能であり、各実施形態の構成を組み合わせることも可能である。さらに、前述した実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換又は変更を行うことができる。
【符号の説明】
【００６１】
１  入力文字列予測装置
１０  入力部
１０Ａ  文字キー
１０Ｂ  キャンセルキー
１２  表示部
１４  記憶部
１６  制御部
２０  表示文字記憶部
２２  第１記憶部
２４  第２記憶部
３０  表示文字取得部
３２  第１文字取得部
３４  第２文字取得部
３６  置換文字抽出部
３８  予測変換部
４０  表示制御部
５０  文字列生成部
５２  単語抽出部
【図１】
2020140259.tif 000003
【図２】
2020140259.tif 000004
【図３】
2020140259.tif 000005
【図４】
2020140259.tif 000006
【図５】
2020140259.tif 000007
【図６】
2020140259.tif 000008
【図７】
2020140259.tif 000009
【図８】
2020140259.tif 000010
【図９】
2020140259.tif 000011
【図１０】
2020140259.tif 000012
【図１１】
2020140259.tif 000013
【図１２】
2020140259.tif 000014
【図１３】
2020140259.tif 000015