(57)【要約】【課題】  入力予測機能を用いる場合に、ユーザにかかる負担を抑えつつ、表示してほしくない文字列が入力候補として表示されないようにする。【解決手段】  入力された文字列を入力履歴として記憶可能な記憶手段と、ユーザによって入力された文字に続く文字列を、記憶手段に記憶された入力履歴に従って、入力候補として表示する表示手段と、所定の文字列を登録する登録手段と、登録手段に登録された所定の文字列を含む文字列を、入力候補として表示しないよう制御する制御手段とを有することを特徴とする。【選択図】  図６
2014153745.tif 000002
【特許請求の範囲】
【請求項１】
入力された文字列を入力履歴として記憶可能な記憶手段と、
ユーザによって入力された文字に続く文字列を、前記記憶手段に記憶された入力履歴に従って、入力候補として表示する表示手段と、
所定の文字列を登録する登録手段と、
前記登録手段に登録された前記所定の文字列を、前記入力候補として表示しないよう制御する制御手段とを有することを特徴とする情報処理装置。
【請求項２】
前記記憶手段に記憶された入力履歴から文字列を削除する削除手段をさらに有し、
前記登録手段は、前記削除手段によって削除される文字列を登録することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記削除手段によって前記文字列が削除された回数を格納する格納手段と、
前記格納手段によって格納された回数が所定の回数以上であるか否かを判断する判断手段とをさらに有し、
前記格納手段によって格納された回数が前記所定の回数以上であると前記判断手段によって判断された場合に、前記登録手段は、前記削除手段によって削除される文字列を登録することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記所定の回数を、ユーザからの指示に従って変更する変更手段をさらに有することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記制御手段は、前記登録手段に登録された前記所定の文字列を、前記入力履歴として前記記憶手段に記憶しないよう制御することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記文字列は、アドレスであることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
入力された文字列を入力履歴として記憶可能な記憶手段と、
前記入力された文字列によってユーザを認証する認証手段と、
ユーザによって入力された文字に続く文字列を、前記記憶手段に記憶された入力履歴に従って、入力候補として表示する表示手段と、
前記認証手段による前記ユーザの認証に成功した場合に、前記入力された文字列を前記入力候補として表示するよう制御し、前記認証手段による前記ユーザの認証に成功しなかった場合に、前記入力された文字列を前記入力候補として表示しないよう制御する制御手段とを有することを特徴とする情報処理装置。
【請求項８】
前記制御手段は、前記認証手段による前記ユーザの認証に成功した場合に、前記入力された文字列を前記記憶手段に記憶し、前記認証手段による前記ユーザの認証に成功しなかった場合に、前記入力された文字列を前記記憶手段に記憶しないよう制御することを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記文字列は、ユーザ名であることを特徴とする請求項７または８に記載の情報処理装置。
【請求項１０】
入力された文字列を入力履歴として記憶手段に記憶する記憶工程と、
ユーザによって入力された文字に続く文字列を、前記記憶手段に記憶された入力履歴に従って、入力候補として表示する表示工程と、
登録手段に登録された所定の文字列を、前記入力候補として表示しないよう制御する制御工程とを有することを特徴とする情報処理装置の制御方法。
【請求項１１】
入力された文字列を入力履歴として記憶手段に記憶する記憶工程と、
前記入力された文字列によってユーザを認証する認証工程と、
ユーザによって入力された文字に続く文字列を、前記記憶手段に記憶された入力履歴に従って、入力候補として表示する表示工程と、
前記認証工程における前記ユーザの認証に成功した場合に、前記入力された文字列を前記入力候補として表示するよう制御し、前記認証工程における前記ユーザの認証に成功しなかった場合に、前記入力された文字列を前記入力候補として表示しないよう制御する制御手段とを有することを特徴とする情報処理装置の制御方法。
【請求項１２】
請求項１０または１１に記載の情報処理装置の制御方法を、コンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来のＰＣや携帯電話等の情報処理装置の中には、入力予測機能を持つものがある。（特許文献１参照）
この入力予測機能は、ユーザによって文字が入力されたら、その文字に引き続いて入力される文字列を入力履歴に基づいて予測し、予測した文字列を入力候補として一覧表示する機能である。ユーザは、表示された入力候補の中から所望の文字列を選択すると、選択された文字列が入力文字列として確定する。それによって、ユーザは、入力しようとする全ての文字列を入力しなくても、文字列の入力を完了することができる。
【０００３】
しかしながら、この機能を用いると、文字の入力時に過去の入力履歴が表示されるため、ユーザが、入力履歴として表示してほしくない文字列が、表示されてしまうことがある。
【０００４】
例えば、あるユーザＡが、過去に、個人名や住所等のプライバシーに関連する文字列や、商品の開発コードなどの機密事項に関連する文字列を入力していた場合、それらの文字列が入力履歴として残る。その後、他のユーザＢが文字を入力する際に、それらの文字列が入力候補として表示されるため、ユーザＡが見られたくない情報が、ユーザＢに見られてしまうおそれがある。
【０００５】
そこで、従来、文字列を入力する画面で、ユーザによってクリアボタンが選択されると、その画面で入力された文字列を入力履歴に残さないよう制御する方法がある。（特許文献２参照）また、この特許文献２には、一度入力履歴に残した文字列の一覧から削除したい文字列を個別に選んで削除する方法や、入力履歴を一括して削除する方法も記載されている。
【０００６】
また、そもそも、入力履歴を保存する保存機能を無効にする方法や、予測した文字列を入力候補として表示する機能を無効にするといった方法がある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００１−２４３２２１号公報
【特許文献２】特開２００９−１０４２２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来の方法では、以下のような課題がある。
【０００９】
特許文献２に記載された方法の場合、文字列を入力するたびにユーザはクリアボタンを選択しなければならない。特に、入力履歴に残したくない文字列が、たびたび入力する必要のある文字列である場合には、ユーザは、その文字列を入力するたびにクリアボタンを指定しなければならない。
【００１０】
また、表示された入力候補の一覧から削除したい文字列を個別に削除する方法の場合も、ユーザが、その文字列を入力するたびに、後から、その文字列を削除する作業が必要であり、ユーザに負担がかかる。
【００１１】
入力履歴を一括して削除する方法では、削除したくない文字列まで削除されてしまうため、入力候補として表示してほしい文字列が入力予測機能によって表示されなくなるおそれがあり、利便性に欠ける。
【００１２】
また、特許文献３に記載されたように、入力履歴を保存する保存機能や、入力予測機能を無効にする方法を用いても、ユーザが入力予測機能を利用できなくなるため、利便性に欠ける。
【００１３】
本発明は、上記の課題を解決するためになされたものである。本発明は、入力予測機能を用いる場合に、ユーザにかかる負担を抑えつつ、表示してほしくない文字列が入力候補として表示されないようにする仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明に係る情報処理装置は、
入力された文字列を入力履歴として記憶可能な記憶手段と、ユーザによって入力された文字に続く文字列を、記憶手段に記憶された入力履歴に従って、入力候補として表示する表示手段と、所定の文字列を登録する登録手段と、登録手段に登録された所定の文字列を含む文字列を、入力候補として表示しないよう制御する制御手段とを有することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、入力予測機能を用いる場合に、ユーザにかかる負担を抑えつつ、表示してほしくない文字列が入力候補として表示されないようにすることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態におけるシステムの全体図である。
【図２】本発明の実施形態における情報処理装置１０１のハードウェア構成を示すブロック図である。
【図３】本発明の実施形態における記憶領域に記憶されるデータを示す図である。
【図４】本発明の実施形態における処理手順を示すフローチャートである。
【図５】本発明の実施形態における操作画面を示す図である。
【図６】本発明の実施形態における処理手順を示すフローチャートである。
【図７】本発明の実施形態における操作画面を示す図である。
【図８】本発明の実施形態における処理手順を示すフローチャートである。
【図９】本発明の実施形態における操作画面を示す図である。
【図１０】本発明の実施形態における記憶領域に記憶されるデータを示す図である。
【図１１】本発明の実施形態における処理手順を示すフローチャートである。
【図１２】本発明の実施形態における記憶領域に記憶されるデータを示す図である。
【図１３】本発明の実施形態における操作画面を示す図である。
【図１４】本発明の実施形態における処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１８】
＜第１の実施形態＞
まず、本発明に係る第１の実施形態について説明する。
【００１９】
図１は、本発明の実施形態における情報処理装置１０１を含むシステムの全体図である。図１に係るシステムは、情報処理装置１０１と、サーバ１０２、プリンタ１０３を有する。情報処理装置１０１は、例えば、パーソナルコンピュータ（ＰＣ）であり、ユーザの操作に従って画像データを生成したり、プリンタ１０３に印刷指示を送信したりする。サーバ１０２は、情報処理装置１０１から閲覧可能なウェブページを保持し、情報処理装置１０１からキーワードを受信し、受信したキーワードに対応するウェブページを情報処理装置１０１に返す。プリンタ１０３は、画像データに従ってシートに画像を印刷する印刷部を有し、情報処理装置１０１からの印刷データと印刷指示を受信すると、当該印刷データに基づいて画像をシートに印刷する。なお、プリンタ１０３は、情報処理装置から印刷データを受信して印刷する印刷機能に加えて、原稿の画像を読取部によって読み取って画像データを生成して印刷するコピー機能を備えた複合機であってもよい。これら情報処理装置１０１と、サーバ１０２、プリンタ１０３は、ネットワーク１１０を介して互いに通信を行う。
【００２０】
図２は、本発明の実施形態における情報処理装置１０１のハードウェア構成を示すブロック図である。
【００２１】
情報処理装置１０１は、制御部２００と、操作部２１２、表示部２１３を有する。また、情報処理装置１０１は、外部メモリ２１４を接続することができる。
【００２２】
制御部２００は、情報処理装置１０１を統括的に制御する。制御部２００は、ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、記憶領域２０４、操作部Ｉ／Ｆ２０８、表示部Ｉ／Ｆ２０９、外部メモリＩ／Ｆ２１０、ネットワークＩ／Ｆ２１１を有する。
【００２３】
ＣＰＵ２０１は、ＲＯＭ２０２または記憶装置２０４に記憶されたプログラムを読み出して実行する。ＲＯＭ２０２は、ＣＰＵ２０１によって読み出される各種プログラムを記憶する。ＲＡＭ２０３は、ＣＰＵ２０１のワークエリアとして機能する。記憶装置２０４は、ＨＤＤ等の大容量メモリであり、画像データやプログラムを記憶可能である。
【００２４】
操作部Ｉ／Ｆ２０８は、操作部２１２と制御部２００とを接続するインタフェースである。操作部２１２は、キーボードやマウス、表示部２１３に貼られたタッチパネルシートで構成され、ユーザから操作を受け付ける。キーボードは、英字や記号、ひらがなを入力することができ、入力されたひらがなを漢字やカタカナに変換することもできる。操作部Ｉ／Ｆ２０８は、操作部２１２によって受け付けた操作をＣＰＵ２０１に伝える。
【００２５】
表示部Ｉ／Ｆ２０９は、表示部２１３と制御部２００とを接続するインタフェースである。表示部２１３は、液晶ディスプレイやＣＲＴディスプレイで構成され、操作画面や情報処理装置１０１の状態を通知するための通知画面を表示する。
【００２６】
外部メモリＩ／Ｆ２１０は、外部メモリ２１４と制御部２００とを接続するインタフェースである。外部メモリ２１４は、ハードディスク（ＨＤ）やフロッピー（登録商標）ディスク（ＦＤ）、コンパクトフラッシュ（登録商標）メモリ等である。
【００２７】
ネットワークＩ／Ｆ２１１は、制御部２００をＬＡＮ１１０に接続するインタフェースである。ネットワークＩ／Ｆ２１１は、情報処理装置１０１とネットワーク１１０上の装置との通信を制御する。
【００２８】
図３は、ＲＡＭ２０２や記憶装置２０４に記憶されるデータの例を示す。
【００２９】
図３（ａ）に示すＲＡＭ２０２には、入力文字格納領域３１１と、ＮＧワード格納領域３１２が設けられる。入力文字格納領域３１１、及び、ＮＧワード格納領域３１２は、ユーザが入力した文字列を、その文字列が確定される前に、一時的に格納しておくバッファとして用いられる。
【００３０】
図３（ｂ）に示す記憶装置２０４は、入力履歴記憶部３２２と、ＮＧワード記憶部３２３を有する。入力履歴記憶部３２２は、ユーザが入力した文字列が確定された場合に、その文字列を入力履歴として記憶する記憶部である。入力履歴記憶部３２２に記憶された文字列は、ユーザが文字入力を行う際に、入力候補として表示される。ＮＧワード記憶部３２３は、入力候補として表示してほしくない文字列（ＮＧワード）を記憶しておく記憶部である。
【００３１】
以上のような構成を有する情報処理装置１０１は、以下のように動作する。
【００３２】
情報処理装置１０１は、操作部２１２によってユーザによって文字が入力されると、入力された文字に続く文字列を予測し、予測した文字列を表示部２１３に表示する入力予測機能を有する。この入力予測機能によって、ユーザは、入力したい文字列を最後まで入力せずとも、表示された文字列を選択することによって、入力したい文字列を入力することができる。
【００３３】
例えば、あるユーザＡが、過去に、個人名や住所等のプライバシーに関連する文字列や、商品の開発コードなどの機密事項に関連する文字列を入力した場合、それらの文字列が入力履歴として残る。その後、そのユーザＡが文字を入力する場合には、ユーザＡが過去に入力した文字列を入力予測として表示することによって入力の手間を省くことができる。しかしながら、他のユーザＢが文字を入力するときにまで、それらの文字列が入力候補として表示されると、ユーザＡが見られたくない情報が、他のユーザに見られてしまうおそれがある。
【００３４】
そこで、本実施形態における情報処理装置１０１は、ユーザが表示してほしくないと考えている文字列を予め登録しておき、ユーザによって入力された文字に続く文字列を表示する際に、ユーザが表示してほしくない文字列を表示しないよう制御する。
【００３５】
以下に、その制御について詳細に説明する。
【００３６】
まず、ユーザが、入力候補として表示してほしくない文字列（ＮＧワード）を事前に登録しておく処理について説明する。
【００３７】
図４は、本発明の第１の実施形態に係る処理を説明するためのフローチャートである。図４のフローチャートに示す処理は、ＣＰＵ２０１が、ＲＯＭ２０２に記憶されたプログラムをＲＡＭ２０３に読み出して実行することによって行われる。なお、図４のフローチャートに示す処理は、図５に示す画面が表示部２１３に表示された状態で開始される。
【００３８】
Ｓ５０１で、ＣＰＵ２０１は、ユーザによって入力された文字を受け付ける。ＮＧワード入力欄６０１は、ユーザが文字を入力する領域であり、ユーザは、この領域を指定して、操作部２１２を介して文字を入力する。入力された文字は、ＣＰＵ２０１によって、ＮＧワード入力欄６０１に表示される。登録キー６０２は、ユーザが、ＮＧワード入力欄６０１に入力された文字列を、ＮＧワードとして登録するよう要求するためのキーである。
【００３９】
Ｓ５０２で、ＣＰＵ２０１は、Ｓ５０１で受け付けた文字を、ＲＡＭ２０２のＮＧワード格納領域３１２に一時的に格納する。
【００４０】
Ｓ５０３で、ＣＰＵ２０１は、登録キー６０２が押されたか否かを判定する。登録キー６０２が押されたと判定された場合、ＣＰＵ２０１は、Ｓ５０３に処理を進め、登録キー６０２が押されていないと判定された場合、ＣＰＵ２０１は、Ｓ５０１に処理を戻す。
【００４１】
Ｓ５０４で、ＣＰＵ２０１は、ＮＧワード格納領域３１２に格納された文字列が、ＮＧワード記憶部３２３に既に登録されているか否かを判定する。既に登録されていると判定された場合、ＣＰＵ２０１は、図４に示す処理を終了する。一方、まだＮＧワード記憶部３２３に登録されていないと判定された場合、Ｓ５０５に処理を進める。
【００４２】
Ｓ５０５で、ＣＰＵ２０１は、ＮＧワード入力欄６０１に入力された文字列を、ＮＧワードとして、ＮＧワード記憶部３２３に登録し、処理を終了する。
【００４３】
以上のように、ＮＧワード記憶部３２３に、ユーザが、入力候補として表示してほしくないＮＧワードを登録しておくことができる。
【００４４】
なお、ユーザは、一度登録したＮＧワードを削除することもできる。図５のＮＧワード一覧６０３のＮＧワード１〜ＮＧワード５には、既に登録されたＮＧワードが表示される。ユーザは、これらのＮＧワードの中から、削除したいＮＧワードを、チェックボックスによって選択する。そして、ユーザは、ＮＧワードが選択された状態で、削除ボタン６０５を押すと、ＣＰＵ２０１は、チェックボックスで選択されたＮＧワードを、ＮＧワード記憶部３２３から削除する。
【００４５】
例えば、ユーザが、ＮＧワード一覧６０３の「ＮＧワード２」のチェックボックスを選択し、削除ボタン６０５を押下すると、ＣＰＵ２０１は、「ＮＧワード２」に該当する文字列を、ＮＧワード記憶部３２３から削除する。「すべて選択」６０４は、ＮＧワード記憶部３２３に登録された全てのＮＧワードを一括して選択するための項目である。「すべて選択」６０４のチェックボックスが選択された状態で、削除キー６０５が押されると、ＣＰＵ２０１は、ＮＧワード記憶部３２３に記憶された全てのＮＧワードを削除する。
【００４６】
次に、ユーザが文字列を入力する際の処理を説明する。
【００４７】
図６は、本発明の第１の実施形態に係る処理を説明するためのフローチャートである。図６のフローチャートに示す処理は、ＣＰＵ２０１が、ＲＯＭ２０２に記憶されたプログラムをＲＡＭ２０３に読み出して実行することによって行われる。なお、図６のフローチャートに示す処理は、図７（ａ）に示す画面が表示部２１３に表示された状態で開始される。
【００４８】
Ｓ４００で、ＣＰＵ２０１は、ＲＡＭ２０３に変数Ｃを用意し、変数Ｃに初期値１を代入する。
【００４９】
Ｓ４０１で、ＣＰＵ２０１は、ユーザからＣ文字目の文字の入力を受け付ける。ユーザは、文字入力領域２００１に文字を入力する。この図７（ａ）に示す画面は、キーワードを入力すべき画面であればどのような画面であってもよい。例えば、情報処理装置１０１が備えるブラウザの検索キーワードを入れる画面であってもよいし、情報処理装置１０１が備える辞書から所定の単語を検索するための画面であってもよい。またはアドレス帳から所定のアドレスを検索するための画面であってもよい。また、検索に限らず、カレンダーのスケジュールを入力するための画面、あるいは、メールのタイトルや本文を入力するための画面であってもよい。また、入力される文字は、ひらがな、カタカナ、数字、漢字、アルファベット、記号等を含むものとする。
【００５０】
Ｓ４０２で、ＣＰＵ２０１は、受け付けたＣ文字目の文字を、それまでに入力された文字に続けて入力文字列格納領域３１１に格納する。
【００５１】
Ｓ４０３で、ＣＰＵ２０１は、入力された１〜Ｃ文字目の文字列と、前方一致する文字列を、入力履歴記憶部３２２の中から検索する。例えば、１文字目に「あ」が入力された場合、ＣＰＵ２０１は、入力履歴記憶部３２２の中で１文字目が「あ」から始まる文字列を検索する。また、１文字目に「あ」、２文字目に「さ」が入力された場合、ＣＰＵ２０１は、「あさ」から始まる文字列を検索する。なお、入力履歴記憶部３２２の中に漢字やアルファベットを含む文字列については、漢字やアルファベットの読みをひらがなで管理し、ＣＰＵ２０１は、そのひらがなを参照して、文字列を検索する。
【００５２】
Ｓ４０４で、ＣＰＵ２０１は、検索の結果、見つかった文字列を入力候補として表示部２１３に一覧表示する。例えば、図７（ｂ）の画面が表示される。
【００５３】
Ｓ４１１で、ＣＰＵ２０１は、次の文字が入力されたときのために、変数Ｃに１を加えておく。
【００５４】
Ｓ４０５で、ＣＰＵ２０１は、一覧表示された入力候補のリストから、いずれか１つが選択されたか否かを判定する。選択されたと判定された場合、ＣＰＵ２０１は、Ｓ４０６に処理を進める。
【００５５】
Ｓ４０６で、ＣＰＵ２０１は、選択された文字列を文字入力領域２００１に設定する。入力された文字列は、文字入力領域２００１に表示される。図７（ｃ）は、文字列「ＲＡプロジェクト」（アールエープロジェクト）が選択されたことを示す図であり、図７（ｄ）は、選択された文字列「ＲＡプロジェクト」が入力領域２００１に表示されたことを示す図である。
【００５６】
一方、Ｓ４０５で、選択されていないと判定された場合、ＣＰＵ２０１は、Ｓ４０６の処理を実行せずに、Ｓ４０７に処理を進める。
【００５７】
Ｓ４０７で、ＣＰＵ２０１は、ユーザによって、ＯＫキー２００２が押されたか否かを判定する。ＯＫキー２００２は、ユーザが、入力領域２００１に入力された文字列を確定文字列として決定するよう要求するためのキーである。ＯＫキー２００２が押されたと判定された場合、ＣＰＵ２０１は、Ｓ４０８に処理を進める。一方、ＯＫキー２００２が押されていないと判定した場合、ＣＰＵ２０１は、Ｓ４０１に処理を戻す。
【００５８】
Ｓ４０８で、ＣＰＵ２０１は、入力された文字列に従った処理を実行する。ここでいう処理とは、文字列によるウェブサイトの検索や、アドレス帳内のアドレスの検索、またはスケジュール帳やメールのタイトルや本文への文字列の登録である。
【００５９】
Ｓ４０９で、ＣＰＵ２０１は、Ｓ４０７で、ＯＫキー２００２が押され、確定文字列として決定された文字列が、ＮＧワード記憶部３２３に記憶されたＮＧワードに一致するか否かを判定する。一致しないと判定された場合、Ｓ４１０に処理を進め、一致すると判定された場合、Ｓ４１０の処理を実行せずに処理を終了する。
【００６０】
Ｓ４１０で、ＣＰＵ２０１は、確定文字列として決定された文字列を、入力履歴記憶部３２２に記憶して処理を終了する。
【００６１】
以上のように制御することによって、入力候補として表示してほしくない文字列として予め登録された文字列が、入力履歴として記憶されることを防ぐことができる。それによって、入力候補として表示してほしくない文字列が、次回以降の文字の入力時に、入力候補として表示されることを防ぐことができる。また、入力候補として表示してほしくない文字列以外の文字列については、次回以降の文字の入力時に、入力候補として表示させることができる。
【００６２】
このように、本実施形態に係る発明によれば、入力予測機能の利便性を維持し、ユーザにかかる負担を抑えつつ、第三者に見られたくない文字列が入力予測機能によって表示されないようにすることができる。
【００６３】
なお、本実施形態では、ＮＧワード記憶部３２３に記憶された文字列が入力履歴記憶部３２２に記憶されないように制御する例を説明した。しかしながら、本発明は、これに限られるものではない。例えば、次のように制御しても良い。例えば、ＣＰＵ２０１は、ＮＧワード記憶部３２３に記憶された文字列であっても入力履歴記憶部３２２に記憶する。ただし、入力履歴記憶部３２２に記憶された文字列を入力候補として表示する際に、表示しようとする文字列が、ＮＧワード３２３に記憶された文字列と一致すれば、ＣＰＵ２０１は、その文字列を入力候補として表示しないよう制御する。
【００６４】
なお、本実施形態では、Ｓ４０８で、ＣＰＵ２０１が、確定文字列として決定された文字列が、ＮＧワード記憶部３２３に記憶されたＮＧワードに一致するか否かを判定する例を説明した。しかしながら、本発明は、これに限られるものではない。例えば、確定文字列として決定された文字列が、ＮＧワードを含むか否かを判定してもよい。例えば、予めＮＧワードとして登録されたＮＧワードが「カメラ」であるとする。その後、ユーザが入力した文字列が「ビデオカメラ」である場合に、確定文字列として決定された文字がＮＧワードを含むため、「ビデオカメラ」を入力履歴記憶部３２２に記憶しないように制御してもよい。
【００６５】
なお、上述の例では、Ｓ４０１で文字が入力される場合のみの説明をしたが、Ｓ４０１で入力済みの文字が削除された場合、ＣＰＵ２０１は、入力文字列格納領域３１１に格納済みの文字列からＣ文字目の文字を削除し、Ｓ４１１でＣから１を減算すればよい。
【００６６】
また、上述の図３（ｂ）に示す記憶装置２０４は、情報処理装置１０１の内部に存在する例を説明したが、サーバ１０２が備えていてもよい。その場合、情報処理装置１０１がサーバ１０２と連携して上述の制御を行う。
【００６７】
具体的には、まず、入力候補として表示してほしくない文字列（ＮＧワード）を事前に登録しておく処理として、図４のＳ５０１〜Ｓ５０３を情報処理装置１０１が実行する。そして、Ｓ３０３で、登録キーが押された場合に、ＣＰＵ２０１は、サーバ１０２に、ＮＧワードの登録要求を送信する。Ｓ５０４で、サーバ１０２のＣＰＵは、登録要求されたＮＧワードが、サーバのＮＧワード記憶部３２３に既に登録されているか否かを判定する。そして、登録されていないと判定した場合、サーバ１０２のＣＰＵは、登録要求された文字列を、ＮＧワードとして、サーバのＮＧワード記憶部３２３に登録し、処理を終了する。一方、登録要求されたＮＧワードが、サーバのＮＧワード記憶部３２３に既に登録されている場合、サーバ１０２のＣＰＵは、Ｓ５０５の処理を実行せずに処理を終了する。
【００６８】
その後、ユーザが文字列を入力する際の処理として、まず、情報処理装置１０１が、図６のＳ４０１、Ｓ４０２を実行する。そして、Ｓ４０２で入力文字格納領域３１１に格納された１〜Ｃ文字の文字列をサーバ１０２に送信する。Ｓ４０３で、サーバ１０２は、情報処理装置１０１から送信された１〜Ｃ文字目の文字列と前方一致する文字列を、サーバの入力履歴記憶部３２２の中から検索する。そして、サーバ１０２は、検索の結果見つかった入力候補を情報処理装置１０１に送信し、情報処理装置１０１は、Ｓ４０４で、その入力候補を表示部２１３に表示し、Ｓ４０５で、変数Ｃに１を加える。その後、情報処理装置１０１のＣＰＵ２０１は、Ｓ４０５で、表示された文字列が選択されたと判定したら、選択された文字列をサーバ１０２に通知する。サーバ１０２は、この通知を受けて、Ｓ４０６で、選択された文字列を入力文字列として決定する。その後、情報処理装置１０１のＣＰＵ２０１は、Ｓ４０７で、ＯＫキー２００２が押されたか否かを判定し、ＯＫキー２００２が押されたと判定した場合に、Ｓ４０８で、サーバ１０２にＯＫキー２００２が押された旨を通知する。サーバ１０２のＣＰＵは、この通知を受信すると、Ｓ４０８で、入力された文字列に従った処理を実行する。そして、Ｓ４０９で、サーバ２０１のＣＰＵは、Ｓ４０６で決定された文字列が、ＮＧワード記憶部３２３に登録されているか否かを判定し、登録されていなければ、Ｓ４１０で、入力された文字列を入力履歴記憶部３２２に記憶して処理を終了する。一方、Ｓ４０６で決定された文字列が、ＮＧワード記憶部３２３に登録されていれば、サーバ１０２のＣＰＵは、入力された文字列を入力履歴記憶部３２２に記憶せずに、処理を終了する。
【００６９】
＜第２の実施形態＞
次に、本発明に係る第２の実施形態について説明する。
【００７０】
第２の実施形態では、文字の入力中に表示される入力候補の一覧から、ユーザが任意の文字列を選んで削除できるようにし、削除された文字列を、ＮＧワード記憶部２３２に自動的に登録させるケースについて説明する。それによって、ユーザが、入力候補として表示してほしくない文字列を削除する作業を行うことによって、それ以降、その文字列が、入力候補として表示されることを防ぐことができる。
【００７１】
なお、図１で説明したシステム構成や、図２で説明した情報処理装置１０１の構成、図３で説明したＲＡＭ２０２や記憶装置２０４に記憶されるデータについては、第１の実施形態と同様である。そのため、詳しい説明は省略し、ここでは、第１の実施形態との差分を説明する。
【００７２】
図８は、本発明の第２の実施形態に係る処理を説明するためのフローチャートである。なお、図８のフローチャートに示す処理は、ＣＰＵ２０１が、ＲＯＭ２０２に記憶されたプログラムをＲＡＭ２０３に読み出して実行することによって行われる。なお、図８に示すフローチャートに示す処理は、入力履歴の削除指示を受け付けたことに従って開始される。
【００７３】
Ｓ７０１で、ＣＰＵ２０１は、図９（ａ）に示す入力履歴を削除するための画面を表示する。図９（ａ）に示す画面は、タイトル８０１と、入力履歴一覧８０２と、削除ボタン８０８、キャンセルボタン８０９が表示される。
【００７４】
Ｓ７０２で、ＣＰＵ２０１は、操作部２１２を介して文字列の選択を受け付ける。文字列が選択されると、ＣＰＵ２０１は、文字列が選択されたことを示す画面を表示部２１３に表示する。図９（ｂ）に示す画面では、「ＲＡプロジェクト」が選択されている。
【００７５】
Ｓ７０３で、ＣＰＵ２０１は、文字列の削除が指示されたか否かを判定する。文字列の削除指示は、削除ボタン８０８が押されることによってなされる。文字列の削除指示を受け付けたと判定した場合、ＣＰＵ２０１は、Ｓ７０４に処理を進める。一方、文字列の削除指示を受け付けていないと判定した場合、Ｓ７０６に処理を進める。
【００７６】
Ｓ７０４で、ＣＰＵ２０１は、図９（ａ）に示す画面で選択された文字列を、入力履歴記憶部３２２から削除する。
【００７７】
そして、Ｓ７０５で、ＣＰＵ２０１は、図９（ａ）に示す画面で選択された文字列を、ＮＧワード記憶部３２３に記憶し、それ以降、その文字列が入力履歴として入力履歴部３２２に記憶されないようにする。そして、処理を終了する。
【００７８】
一方、Ｓ７０３からＳ７０６に処理を進めた場合、Ｓ７０６で、ＣＰＵ２０１は、キャンセルキー８０９が押されたか否かを判定する。キャンセルキー８０９が押されたと判定された場合、ＣＰＵ２０１は、図８に示す処理を終了する。一方、キャンセルキー８０９が押されていないと判定された場合、ＣＰＵ２０１は、Ｓ７０２に処理を戻す。
【００７９】
以上のように、本実施形態によれば、ユーザが、入力候補として表示してほしくない文字列を削除する作業を行うことによって、それ以降、その文字列が、入力候補として表示されることを防ぐことができる。
【００８０】
なお、本実施形態では、削除指示された文字列を、必ずＮＧワード記憶部３２３に記憶する例を説明した。しかしながら、本発明はこれに限られるものではなく、文字列の削除を指示された場合に図９（ｃ）に示す画面を表示し、削除を指示された文字列をＮＧワード記憶部３２３に記憶するか否かをユーザに問い合わせるようにしてもよい。図９（ｃ）の画面で「はい」が選択された場合、ＣＰＵ２０１は、削除を指示された文字列をＮＧワード記憶部３２３に記憶し、「いいえ」が選択された場合、削除を指示された文字列をＮＧワード記憶部３２３に記憶しないよう制御すればよい。
【００８１】
＜第３の実施形態＞
第２の実施形態では、１回の削除指示で、削除を指示された文字列をＮＧワード記憶部３２３に登録する処理について説明した。
【００８２】
第３の実施形態では、同じ文字列が一定回数削除された場合に、その文字列をＮＧワード記憶部３２３に登録する処理について説明する。
【００８３】
なお、ここでは、第２の実施形態との差分のみ説明する。
【００８４】
図９は、第３の実施形態における記憶装置２０４に記憶されたデータの例を示す図である。
【００８５】
本実施形態における記憶装置２０４は、入力履歴記憶部３２２、ＮＧワード記憶部３２３、ＮＧ候補ワードリスト９０２、削除カウント９０３を有している。
【００８６】
ＮＧワード記憶部３２３は、入力履歴記憶部３２２への保存を禁止する文字列（ＮＧワード）を格納している。
【００８７】
ＮＧ候補ワードリスト９０２は、入力履歴から削除されたことがある文字列を示す。削除カウント９０３は、各文字列が削除された回数を示す。
【００８８】
図９の例では、ＮＧ候補ワードリスト９０２に保存された“ＲＡプロジェクト”という文字列が削除カウント９０３に示された回数（２回）削除されたことを示す。つまり、“ＲＡプロジェクト”という文字列は、ユーザが入力候補として表示してほしくない文字列である可能性が高い。そこで、本実施形態では、同じ文字列が一定回数削除された場合に、ＣＰＵ２０１は、その文字列を自動的にＮＧワード記憶部３２３に登録し、入力候補として表示されないように制御する。
【００８９】
図１０は、本発明の第３の実施形態において、入力履歴から、操作部２１２からユーザによってＮ回削除された文字列を、情報処理装置１０１がＮＧワード記憶部３２３に保存する一連の処理を説明するフロー図である。図１０に示す各動作は、ＣＰＵ２０１が、ＲＯＭ２０２或いは記憶領域２０４に格納された制御プログラムを読み出して実行することにより実現される。なお、図１０に示すフローチャートに示す処理は、入力履歴の削除指示を受け付けたことに従って開始される。
【００９０】
Ｓ１００１で、ＣＰＵ２０１は、図９（ａ）に示す入力履歴を削除するための画面を表示する。図９（ａ）に示す画面は、タイトル８０１と、入力履歴一覧８０２と、削除ボタン８０８、キャンセルボタン８０９が表示される。
【００９１】
Ｓ１００２で、ＣＰＵ２０１は、操作部２１２を介して文字列の選択を受け付ける。文字列が選択されると、ＣＰＵ２０１は、文字列が選択されたことを示す画面を表示部２１３に表示する。図９（ｂ）に示す画面は、「ＲＡプロジェクト」が選択された例である。
【００９２】
Ｓ１００３で、ＣＰＵ２０１は、文字列の削除が指示されたか否かを判定する。文字列の削除指示は、削除ボタン８０８が押されることによってなされる。文字列の削除指示を受け付けたと判定した場合、ＣＰＵ２０１は、Ｓ１００４に処理を進める。一方、文字列の削除指示を受け付けていないと判定した場合、Ｓ１００９に処理を進める。
【００９３】
Ｓ１００４で、ＣＰＵ２０１は、ＣＰＵ２０１は、図９（ａ）に示す画面で選択された文字列を、入力履歴記憶部３２２から削除する。
【００９４】
Ｓ１００５で、ＣＰＵ２０１は、削除が指示された文字列がＮＧワード候補リスト９０２に登録済みであるか否かを判定する。ＮＧワード候補リスト９０２に登録済みであると判定された場合、ＣＰＵ２０１は、Ｓ１００６に処理を進め、ＮＧワード候補リスト９０２に登録済みでないと判定された場合、ＣＰＵ２０１は、Ｓ１０１０に処理を進める。
【００９５】
Ｓ１００６で、ＣＰＵ２０１は、文字列を削除した回数は所定回数以上であるか否かを判断する。この所定回数の値は、予め定められた固定の値でもよいし、ユーザが操作部２１２を介して行った指示に従って変更することができるものであってもよい。文字列を削除した回数は所定回数以上であると判断すると、ＣＰＵ２０１はＳ１００７に処理を進め、文字列を削除した回数は所定回数未満であると判断すると、ＣＰＵ２０１はＳ１０１２に処理を進める。
【００９６】
Ｓ１００７で、ＣＰＵ２０１は、削除が指示された文字列をＮＧワード記憶部３２３のＮＧワードリスト９０１に登録し、それ以降、その文字列が入力履歴として入力履歴部３２２に記憶されないようにする。
【００９７】
Ｓ１００８で、ＣＰＵ２０１は、削除が指示された文字列をＮＧワード候補リスト９０２から削除する。なお、ここでＣＰＵ２０１は、削除が指示された文字列の削除カウント９０３も削除する。そして、ＣＰＵ２０１は、図１１のフローチャートに示す処理を終了する。
【００９８】
Ｓ１００３からＳ１００９に処理を進めた場合、ＣＰＵ２０１は、Ｓ１００９で、図９（ａ）に示す画面でキャンセルキー８０９が押されたか否かを判定する。キャンセルキー８０９が押されたと判定した場合、ＣＰＵ２０１は、図１１のフローチャートに示す処理を終了する。一方、キャンセルキー８０９が押されたと判定した場合、ＣＰＵ２０１は、Ｓ１００２に処理を戻す。
【００９９】
Ｓ１００５からＳ１０１０に処理を進めた場合、ＣＰＵ２０１は、Ｓ１０１０で、削除が指示された文字列をＮＧワード記憶部３２３のＮＧワード候補リスト９０２に新規に登録する。
【０１００】
そして、Ｓ１０１１で、ＣＰＵ２０１は、Ｓ１０１０で新規に登録された文字列の削除カウント９０３を１に設定し、図１１のフローチャートに示す処理を終了する。
【０１０１】
Ｓ１００６からＳ１０１２に処理を進めた場合、Ｓ１０１２で、ＣＰＵ２０１は、削除が指示された文字列の削除カウントを１増やし、図１１のフローチャートに示す処理を終了する。
【０１０２】
以上のような制御によって、同じ文字列が一定回数削除された場合に、ＣＰＵ２０１は、その文字列をＮＧワード記憶部３２３のＮＧワードに登録し、入力候補として表示されないように制御することができる。
【０１０３】
なお、本実施形態では、所定回数削除が指示された文字列を、必ずＮＧワード記憶部３２３に記憶する例を説明した。しかしながら、本発明はこれに限られるものではなく、所定回数文字列の削除を指示された場合に図９（ｃ）に示す画面を表示し、削除を指示された文字列をＮＧワード記憶部３２３に記憶するか否かをユーザに問い合わせるようにしてもよい。図９（ｃ）の画面で、「はい」が選択された場合、ＣＰＵ２０１は、削除を指示された文字列をＮＧワード記憶部３２３のＮＧワードリスト９０１に登録する。一方、「いいえ」が選択された場合、ＣＰＵ２０１は、削除を指示された文字列をＮＧワード記憶部３２３のＮＧワードリスト９０１に登録しないよう制御する。
【０１０４】
＜第４の実施形態＞
上述した実施形態では、ユーザが、予め登録しておいた文字列を含む文字列を入力した場合に、入力された文字列を入力履歴に残さない例を説明した。
【０１０５】
ユーザが残したくない文字列は、ユーザが予め登録しておいた文字列だけとは限らない。例えば、ユーザが入力に失敗した状態でＯＫキーを押してしまうと、間違った状態の文字列が入力履歴として残ってしまう。そうすると、次回の入力時に、間違った状態の文字列まで入力予測候補として表示されてしまい、入力したい文字列をユーザが選択するときに操作が煩わしくなる。
【０１０６】
例えば、図１３（ａ）に示す認証情報入力画面で、ユーザが、「ｕｓｅｒ００１」というユーザ名が入力されてＥｎｔｅｒキーが押され、パスワードが入力されてＥｎｔｅｒキーが押されると、図１３（ｂ）に示す画面が表示される。そして、ユーザによってＯＫキー３００４が押されることによって、ユーザの認証が始まる。ここで、「ｕｓｅｒ００１」というユーザ名が入力されてＥｎｔｅｒキーが押されると、情報処理装置は、「ｕｓｅｒ００１」を入力履歴として残す。それによって、次回から、情報処理装置は、ユーザによってユーザ名の先頭の文字「ｕ」が入力されると、図１３（ｃ）に示すように「ｕｓｅｒ００１」という文字列を表示し、ユーザの入力を支援することができる。ユーザは、表示された「ｕｓｅｒ００１」を選択することによって、「ｕｓｅｒ００１」という文字列をユーザ名に設定することができる。
【０１０７】
しかしながら、従来の情報処理装置は、ユーザが誤って「ｕｓｅｒ０１」と入力して確定キーを押した場合にまで、「ｕｓｅｒ０１」を入力履歴として残していた。そのため、ユーザが再度先頭の文字「ｕ」を入力すると、図１３（ｄ）に示されるように「ｕｓｅｒ００１」と「ｕｓｅｒ０１」の文字列まで入力候補として表示されるため、ユーザは、「ｕｓｅｒ００１」を注意して選択する必要があり、ユーザの操作の負担となる。
【０１０８】
そこで、本実施形態では、ユーザによって入力された文字列であっても、ユーザが誤って入力した可能性が高い文字列を入力履歴に残さないよう制御する。
【０１０９】
以下に、その制御について詳細に説明する。
【０１１０】
なお、図１で説明したシステム構成や、図２で説明した情報処理装置１０１の構成については、第１の実施形態と同様である。そのため、詳しい説明は省略し、ここでは、第１の実施形態との差分を説明する。
【０１１１】
図１２は、ＲＡＭ２０２や記憶装置２０４に記憶されるデータの例を示す。
【０１１２】
図１２（ａ）に示すＲＡＭ２０２には、ユーザ名格納領域４０００と、パスワード格納領域４００１が設けられる。ユーザ名格納領域４０００は、ユーザが入力したユーザ名のための文字列を、その文字列が確定される前に、一時的に格納しておくバッファとして用いられる。パスワード格納領域４００１は、ユーザが入力したパスワードのための文字列を、その文字列が確定される前に、一時的に格納しておくバッファとして用いられる。
【０１１３】
図１２（ｂ）に示す記憶装置２０４は、入力履歴記憶部３２２と、認証情報記憶部４００１を有する。入力履歴記憶部３２２は、入力履歴として残すと判定された文字列を記憶する記憶部である。入力履歴記憶部３２２に記憶された文字列は、ユーザが文字入力を行う際に、入力候補として表示される。認証情報記憶部４００１は、ユーザごとに、ユーザ名とパスワードを記憶しておく記憶部である。ユーザＩＤとパスワードは、ユーザを認証するために用いられる。
【０１１４】
図１４は、本発明の第４の実施形態に係る処理を説明するためのフローチャートである。なお、図１４のフローチャートに示す処理は、ＣＰＵ２０１が、ＲＯＭ２０２に記憶されたプログラムをＲＡＭ２０３に読み出して実行することによって行われる。なお、図１４に示すフローチャートに示す処理は、図１３（ａ）に示す認証情報入力画面を表示部２１３に表示した状態で開始される。
【０１１５】
Ｓ１２００で、ＣＰＵ２０１は、ＲＡＭ２０３に変数Ｃ及び変数Ｐを用意し、変数Ｃ及び変数Ｐに初期値１を代入する。
【０１１６】
Ｓ１５００で、ＣＰＵ２０１は、図１３（ａ）に示す画面で、情報処理装置１０１の操作部２１２を使って選択されている項目が、ユーザ名であるか、パスワードであるかを判定する。選択されている項目が、ユーザ名であると判定した場合、ＣＰＵ２０１は、Ｓ１２０１に処理を進め、選択されている項目がパスワードであると判定した場合、Ｓ１５０１に処理を進める。
【０１１７】
Ｓ１２０１に処理を進めた場合、ＣＰＵ２０１は、ユーザからＣ文字目の文字の入力を受け付ける。ユーザは、ユーザ名入力領域３００２に文字を入力する。
【０１１８】
Ｓ１２０２で、ＣＰＵ２０１は、受け付けたＣ文字目の文字を、それまでに入力された文字に続けて入力文字列格納領域３１１に格納する。
【０１１９】
Ｓ１２０３で、ＣＰＵ２０１は、入力された１〜Ｃ文字目の文字列と、前方一致する文字列を、入力履歴記憶部３２２の中から検索する。例えば、１文字目に「ｕ」が入力された場合、ＣＰＵ２０１は、入力履歴記憶部３２２の中で１文字目が「ｕ」から始まる文字列を検索する。また、１文字目に「ｕ」、２文字目に「ｓ」が入力された場合、ＣＰＵ２０１は、「ｕｓ」から始まる文字列を検索する。
【０１２０】
Ｓ１２０４で、ＣＰＵ２０１は、検索の結果、見つかった文字列を入力候補として表示部２１３に一覧表示する。例えば、図１３（ｃ）の画面が表示される。
【０１２１】
Ｓ１２１１で、ＣＰＵ２０１は、次の文字が入力されたときのために、変数Ｃに１を加えておく。
【０１２２】
Ｓ１２０５で、ＣＰＵ２０１は、一覧表示された入力候補のリストから、１つの文字列が選択されたか否かを判定する。選択されたと判定された場合、ＣＰＵ２０１は、Ｓ１２０６に処理を進める。
【０１２３】
Ｓ１２０６で、ＣＰＵ２０１は、選択された文字列を文字入力領域２００１に設定する。設定された文字列は、ユーザ名入力領域３００２に表示される。図１３（ｂ）は、ユーザ名「ｕｓｅｒ０１」が選択され、選択された文字列「ｕｓｅｒ０１」がユーザ名入力領域３００２に表示されたことを示す図である。
【０１２４】
一方、Ｓ１２０５で、選択されていないと判定された場合、ＣＰＵ２０１は、Ｓ１２０６の処理を実行せずに、Ｓ１２０７に処理を進める。
【０１２５】
Ｓ１２０７で、ＣＰＵ２０１は、ユーザによって、ＯＫキー３００４が押されたか否かを判定する。ＯＫキー３００４は、ユーザが、ユーザ名入力領域３００２に入力されたユーザ名、及びパスワード入力領域３００３に入力されたパスワードによって認証を開始させるために押されるキーである。ＯＫキー３００４が押されたと判定された場合、ＣＰＵ２０１は、Ｓ１５０４に処理を進める。一方、ＯＫキー３００４が押されていないと判定した場合、ＣＰＵ２０１は、Ｓ１５００に処理を戻す。
【０１２６】
一方、Ｓ１５００からＳ１５０１に処理を進めた場合、Ｓ１５０１で、ＣＰＵ２０１は、ユーザからＰ文字目の文字の入力を受け付ける。ユーザは、パスワード入力領域３００３に文字を入力する。
【０１２７】
Ｓ１５０２で、ＣＰＵ２０１は、受け付けたＰ文字目の文字を、それまでに入力された文字に続けてパスワード格納領域４００１に格納する。
【０１２８】
Ｓ１５０３で、ＣＰＵ２０１は、次の文字が入力されたときのために、変数Ｐに１を加えておく。そして、Ｓ１２０７に処理を進める。
【０１２９】
Ｓ１２０７からＳ１５０４に処理を進めた場合、Ｓ１５０４で、ＣＰＵ２０１は、ユーザ名入力領域３００２と、パスワード入力領域３００３のそれぞれに、ユーザ名とパスワードが入力されているか否かを判定する。ユーザ名とパスワードのいずれか一方でも入力されていないと判定した場合、ＣＰＵ２０１は、Ｓ１５０５に処理を進め、ユーザ名とパスワードの両方とも入力されていると判定した場合、ＣＰＵ２０１は、Ｓ１２０６に処理を進める。
【０１３０】
Ｓ１５０５に処理を進めた場合、ＣＰＵ２０１は、エラーを表示部２１３に表示し、Ｓ１５００に処理を進める。
【０１３１】
Ｓ１２０６に処理を進めた場合、ＣＰＵ２０１は、ユーザ名入力領域３００２に入力されたユーザ名、及びパスワード入力領域３００３に入力されたパスワードに基づいて、ユーザを認証する。具体的に、ＣＰＵ２０１は、ユーザ名入力領域３００２に入力されたユーザ名、及びパスワード入力領域３００３に入力されたパスワードが、認証情報記憶部４００２に登録されているか否かを判定する。登録されている場合に認証は成功し、登録されていない場合に認証は失敗する。
【０１３２】
Ｓ１２０９で、ＣＰＵ２０１は、ユーザの認証に成功したか否かを判定する。ユーザの認証に成功したと判定した場合、Ｓ１５０５に処理を進める。
【０１３３】
Ｓ１５０５で、ＣＰＵ２０１は、認証されたユーザを、情報処理装置１０１にログインさせる。情報処理装置１０１にログインしたユーザは、ログアウトするまで、情報処理装置１０１が有するアプリケーションの使用を許可される。
【０１３４】
そして、Ｓ１２１０で、ＣＰＵ２０１は、ユーザが再びユーザ名を入力する際に、入力予測文字列として提示することができるように、入力されたユーザ名を入力履歴記憶部３２２に記憶し、処理を終了する。
【０１３５】
一方、Ｓ１２０９で、ユーザの認証に成功していないと判定された場合、ＣＰＵ２０１は、Ｓ１５０５及びＳ１２１０の処理を実行せずに処理を終了する。
【０１３６】
以上のように制御することによって、ユーザが誤って入力した可能性が高い文字列が入力履歴として入力履歴として記憶され、次回以降の文字の入力時に、入力候補として表示されることを防ぐことができる。一方、認証に成功したときにユーザが入力した文字列は、ユーザが正しく入力した可能性が高いので、入力履歴として残すことができ、次回以降の文字の入力時に、入力候補として表示させることができる。
【０１３７】
このように、本実施形態に係る発明によれば、入力予測機能の利便性を維持し、ユーザが入力履歴を個別に削除するためにかかる負担を抑えつつ、表示してほしくない文字列が入力予測機能によって表示されることを防ぐことができる。
【０１３８】
なお、本実施形態では、ユーザが、情報処理装置１０１にログインするときの処理の例を説明した。そのため、情報処理装置１０１が認証情報記憶部４００２を有し、情報処理装置１０１がユーザを認証する例を説明した。しかしながら、本発明は、ユーザが、情報処理装置１０１のＷｅｂブラウザを使って、サーバ１０２にログインするときの処理に適用することもできる。
【０１３９】
なお、上述の例ではＳ１２０１で文字が入力される場合のみの説明をしたが、Ｓ１２０１で入力済みの文字が削除された場合、ＣＰＵ２０１は、ユーザ名格納領域４０００に格納済みの文字列からＣ文字目の文字を削除し、Ｓ１２１１でＣから１を減算すればよい。
【０１４０】
また、上述の例ではＳ１５０１で文字が入力される場合のみの説明をしたが、Ｓ１５０１で入力済みの文字が削除された場合、ＣＰＵ２０１は、パスワード格納領域４０００に格納済みの文字列からＣ文字目の文字を削除しＳ１２１１でＣから１を減算すればよい。
【０１４１】
なお、本実施形態では、入力された文字列（ユーザ名）に基づくユーザの認証に失敗した場合に、入力された文字列（ユーザ名）を履歴記憶部に登録しないよう制御する例を説明した。しかしながら、本発明はこれに限られるものではなく、一度認証に成功し、入力履歴記憶部３２２に残された文字列（ユーザ名）が、その文字列を使った認証に失敗した場合に、入力履歴記憶部３２２から削除してもよい。それによって、入力履歴記憶部３２２に記憶された文字列がむやみに使用されることによるセキュリティの低下を抑制することができる。
【０１４２】
（その他の実施形態）
なお、上述した実施形態では、情報処理装置１０１の操作部２１２から文字を入力する例を説明したが、プリンタ１０３の操作部から文字を入力する場合に適用することもできる。プリンタ１０３の操作部は、タッチパネルシートと液晶表示部が一体的に構成されたタッチパネルを有し、タッチパネルにソフトウェアキーボードを表示して、ユーザから文字の入力を受け付ける。ソフトウェアキーボードは、英字や記号、ひらがなを入力することができ、入力されたひらがなを漢字やカタカナに変換することもできる。また、上述した実施形態では、持ち運び可能な携帯型端末の操作部から文字を入力する場合に適用することもできる。
【０１４３】
また、上述した実施形態では、情報処理装置１０１をパーソナルコンピュータとして説明したが、情報処理装置１０１は、携帯電話であってもよい。携帯電話の場合、操作部として、キーボードとマウスではなく、キーボードあるいは表示部２１３に貼られたタッチパネルを用いればよい。
【０１４４】
本実施形態におけるフローチャートに示す機能は、ネットワーク又は各種記憶媒体を介して取得したソフトウエア（プログラム）をコンピュータパソコン等の処理装置（ＣＰＵ、プロセッサ）にて実行することでも実現できる。
【符号の説明】
【０１４５】
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
３２２  入力履歴記憶部
３２３  ＮＧワード記憶部
【図１】
2014153745.tif 000003
【図２】
2014153745.tif 000004
【図３】
2014153745.tif 000005
【図４】
2014153745.tif 000006
【図５】
2014153745.tif 000007
【図６】
2014153745.tif 000008
【図７】
2014153745.tif 000009
【図８】
2014153745.tif 000010
【図９】
2014153745.tif 000011
【図１０】
2014153745.tif 000012
【図１１】
2014153745.tif 000013
【図１２】
2014153745.tif 000014
【図１３】
2014153745.tif 000015
【図１４】
2014153745.tif 000016