(57)【要約】【課題】  少ない操作で複数のデータを入れ替える。【解決手段】  文書処理装置は、複数の文字列を入れ替える命令を受け付けるユーザインタフェースを有する。この命令を受け付けると、対象文字列取得部１４２は、入替の対象となる文字列を取得し、その文字列に付加された属性も含めてバッファ１４８に退避する。条件取得部１４４は、属性情報を考慮した入替条件をユーザから取得する。実行部１４６は、取得した入替条件にしたがって、バッファ１４８を利用しつつ、対象文字列を入れ替える。入替処理はユーザの介在なしに自動的に実行される。【選択図】  図２
2005222164.tif 000002
【特許請求の範囲】
【請求項１】
ユーザから複数のデータを入れ替える命令を受け付ける命令受付手段と、
入替の対象となるデータを取得する対象取得手段と、
データに付加された属性情報を考慮した入替条件を取得する条件取得手段と、
前記条件取得手段が取得した前記入替条件にしたがって、前記対象取得手段により取得された前記入替の対象となるデータを入れ替える実行手段と、
を備えることを特徴とするデータ処理装置。
【請求項２】
前記入替の対象となるデータ及びその属性情報を一時的に格納する格納手段を更に備え、
前記対象取得手段は、前記入替の対象となるデータを取得して前記格納手段へ格納し、
前記実行手段は、前記格納手段を利用して前記複数のデータを入れ替えることを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
ユーザから、ユーザにより選択された第１のデータと、データを一時的に格納するための格納手段に既に格納されている第２のデータとを入れ替える命令を受け付ける命令受付手段と、
前記第１のデータを取得する対象取得手段と、
前記第１のデータと前記第２のデータとを入れ替える実行手段と、
を備えることを特徴とするデータ処理装置。
【請求項４】
ユーザから３以上のデータを入替又は置換する命令を受け付ける命令受付手段と、
前記入替又は置換の対象となるデータを取得する対象取得手段と、
前記入替又は置換の条件を取得する条件取得手段と、
前記条件取得手段が取得した条件にしたがって、前記入替又は置換を実行する実行手段と、
を備えることを特徴とするデータ処理装置。
【請求項５】
前記入替又は置換の対象となるデータを一時的に格納する格納手段を更に備え、
前記対象取得手段は、前記入替又は置換の対象となるデータを取得して前記格納手段へ格納し、
前記実行手段は、前記格納手段を利用して前記入替又は置換を実行することを特徴とする請求項４に記載のデータ処理装置。
【請求項６】
前記実行手段は、前記条件に基づいて、前記入替又は置換の手順を生成することを特徴とする請求項４又は５に記載のデータ処理装置。
【請求項７】
ユーザから入力手段を介して複数のデータを入れ替える命令を受け付けるステップと、
入替の対象となるデータの指定をユーザから入力手段を介して受け付けるステップと、
データに付加された属性情報を考慮した入替条件をユーザから入力手段を介して取得するステップと、
前記データを一時的に格納手段に退避しつつ、前記入替条件にしたがって、前記入替の対象となるデータを入れ替えるステップと、
を含むことを特徴とするデータ処理方法。
【請求項８】
ユーザから、ユーザにより選択された第１のデータと、データを一時的に格納するための格納手段に既に格納されている第２のデータとを入れ替える命令を受け付けるステップと、
前記第１のデータの指定をユーザから入力手段を介して受け付けるステップと、
前記第１のデータと前記第２のデータとを入れ替えるステップと、
を含むことを特徴とするデータ処理方法。
【請求項９】
ユーザから入力手段を介して３以上のデータを入替又は置換する命令を受け付けるステップと、
前記入替又は置換の対象となるデータの指定をユーザから入力手段を介して受け付けるステップと、
前記入替又は置換の条件をユーザから入力手段を介して取得するステップと、
前記データを一時的に格納手段に退避しつつ、前記条件にしたがって、前記入替又は置換を実行するステップと、
を含むことを特徴とするデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理技術に関し、特に、データを置換するためのユーザインタフェースを提供するデータ処理装置及び方法に関する。
【背景技術】
【０００２】
従来、文書作成装置などにおいて、異なる箇所に記述された文字列Ａと文字列Ｂとを入れ替えるためには、ユーザが以下に示す手順を実行する必要があった。まず、一方の文字列Ａを範囲選択し、文字列Ａを切り取って又はコピーして、クリップボードに格納する。つづいて、他方の文字列Ｂの前又は後に文字列Ａを貼り付ける。さらに、文字列Ｂを範囲選択し、文字列Ｂを切り取ってクリップボードに格納する。最後に、文字列Ａがあった位置に文字列Ｂを貼り付ける。このとき、最初の手順で文字列Ａを切り取るのではなくコピーしていた場合は、文字列Ａが最初の位置に残っているのでそれを削除する。
【０００３】
このように、従来の技術では、２つの文字列を入れ替えるために、複数の手順をユーザが実行する必要があり、操作が煩雑であるという問題があった。この問題を解決するために、上記の操作を自動的に実行し、少ない操作で文字列を入れ替える技術が提案されている（例えば、特許文献１参照）。
【特許文献１】特開平７−１０５２０９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に開示された文書作成装置は、文字列の位置を自動的に入れ替えるのみであり、文字列に付加された属性情報などは考慮していない。また、特許文献１に開示された文書作成装置は、２つの文型領域又は箱形領域の位置を自動的に入れ替えるのみであり、３以上の文字列が関与した入替や置換操作は考慮していない。本発明者は、これらの課題に鑑み、さらに利便性の高いユーザインタフェースを提供する技術を想到するに至った。
【０００５】
本発明はこうした状況に鑑みてなされたものであり、その目的は、データを入替又は置換する際の、ユーザの利便性を向上させる技術を提供することにある。
【課題を解決するための手段】
【０００６】
本発明のある態様は、データ処理装置に関する。このデータ処理装置は、ユーザから、複数のデータを入れ替える命令を受け付ける命令受付手段と、入替の対象となるデータを取得する対象取得手段と、データに付加された属性情報を考慮した入替条件を取得する条件取得手段と、前記条件取得手段が取得した前記入替条件にしたがって、前記対象取得手段により取得された前記入替の対象となるデータを入れ替える実行手段と、を備えることを特徴とする。
【０００７】
データに付加された属性情報は、例えば、文字列データに付加された、色、サイズ、フォント、下線、斜体、太字、字間などの書式情報などであってもよいし、ＸＭＬやＨＴＭＬなどの構造化文書における要素の属性値、例えば、ＨＴＭＬの「img」タグの「src」属性、「a」タグの「href」属性などであってもよい。この構成によれば、データの属性をも考慮しつつ、少ない操作でデータを入れ替えることができるので、ユーザの利便性を向上させることができる。
【０００８】
データ処理装置は、前記入替の対象となるデータ及びその属性情報を一時的に格納する格納手段を更に備え、前記対象取得手段は、前記入替の対象となるデータを取得して前記格納手段へ格納し、前記実行手段は、前記格納手段を利用して前記複数のデータを入れ替えてもよい。対象取得手段は、入替の対象として指定された全てのデータを格納手段に格納してもよいし、実行手段による入替操作の進行に伴って、退避を要するデータを格納手段に格納してもよい。
【０００９】
本発明の別の態様も、データ処理装置に関する。このデータ処理装置は、ユーザから、ユーザにより選択された第１のデータと、データを一時的に格納するための格納手段に既に格納されている第２のデータとを入れ替える命令を受け付ける命令受付手段と、前記第１のデータを取得する対象取得手段と、前記第１のデータと前記第２のデータとを入れ替える実行手段と、を備えることを特徴とする。
【００１０】
この構成によれば、クリップボードなどの格納手段に退避されているデータと、選択したデータとを入れ替えることができるので、例えば、３以上のデータを少ない操作で順次入れ替えることができ、ユーザの利便性を向上させることができる。
【００１１】
本発明の更に別の態様も、データ処理装置に関する。このデータ処理装置は、ユーザから３以上のデータを入替又は置換する命令を受け付ける命令受付手段と、前記入替又は置換の対象となるデータを取得する対象取得手段と、前記入替又は置換の条件を取得する条件取得手段と、前記条件取得手段が取得した条件にしたがって、前記入替又は置換を実行する実行手段と、を備えることを特徴とする。
【００１２】
この構成によれば、３以上のデータを入れ替えたり、他のデータと置換したりするときに、ユーザは条件を指示するだけでよく、少ない操作で容易に実行させることができるので、ユーザの利便性を向上させることができる。
【００１３】
データ処理装置は、前記入替又は置換の対象となるデータを一時的に格納する格納手段を更に備え、前記対象取得手段は、前記入替又は置換の対象となるデータを取得して前記格納手段へ格納し、前記実行手段は、前記格納手段を利用して前記入替又は置換を実行してもよい。前記実行手段は、前記条件に基づいて、前記入替又は置換の手順を生成してもよい。これにより、ユーザの操作を最小限に抑えることができる。
【００１４】
本発明の更に別の態様は、データ処理方法に関する。このデータ処理方法は、ユーザから入力手段を介して複数のデータを入れ替える命令を受け付けるステップと、入替の対象となるデータの指定をユーザから入力手段を介して受け付けるステップと、データに付加された属性情報を考慮した入替条件をユーザから入力手段を介して取得するステップと、前記データを一時的に格納手段に退避しつつ、前記入替条件にしたがって、前記入替の対象となるデータを入れ替えるステップと、を含むことを特徴とする。
【００１５】
本発明の更に別の態様も、データ処理方法に関する。このデータ処理方法は、ユーザから、ユーザにより選択された第１のデータと、データを一時的に格納するための格納手段に既に格納されている第２のデータとを入れ替える命令を受け付けるステップと、前記第１のデータの指定をユーザから入力手段を介して受け付けるステップと、前記第１のデータと前記第２のデータとを入れ替えるステップと、を含むことを特徴とする。
【００１６】
本発明の更に別の態様も、データ処理方法に関する。このデータ処理方法は、ユーザから入力手段を介して３以上のデータを入替又は置換する命令を受け付けるステップと、前記入替又は置換の対象となるデータの指定をユーザから入力手段を介して受け付けるステップと、前記入替又は置換の条件をユーザから入力手段を介して取得するステップと、前記データを一時的に格納手段に退避しつつ、前記条件にしたがって、前記入替又は置換を実行するステップと、を含むことを特徴とする。
【００１７】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１８】
本発明によれば、データの入替又は置換を行う際の、ユーザの利便性を向上させることができる。
【発明を実施するための最良の形態】
【００１９】
（第１の実施の形態）
図１は、第１の実施の形態に係るデータ処理装置の一例である文書処理装置１００の構成を示す。本実施の形態では、文書処理装置１００が、ユーザから指定された２つの文字列を自動的に入れ替える技術について説明する。このとき、文書処理装置１００は、文字列に付加された属性情報も考慮して入れ替えを行う。
【００２０】
文書処理装置１００は、処理対象となる文書をハードディスクやＣＤ−ＲＯＭなどの記憶装置２００から読み込んで保持する文書保持部１１０と、文書保持部１１０に保持された文書を表示装置２１０に表示する表示部１２０と、入力装置２２０を介してユーザから編集指示を受け付けるコマンド受付部１３０と、コマンド受付部１３０が受け付けた編集指示にしたがって文書保持部１１０に保持された文書を編集する編集部１４０とを備える。これらの構成は、ハードウエアコンポーネントでいえば、任意のコンピュータのＣＰＵ、メモリ、メモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。文書保持部１１０は、メモリなどにより構成されてもよい。
【００２１】
図２は、図１に示した編集部１４０のうち、本実施の形態のデータ処理方法に関連する機能ブロックを示す。編集部１４０は、入替対象となる文字列を取得する対象文字列取得部１４２、入替の条件を取得する条件取得部１４４、文字列を入れ替える処理を実行する実行部１４６、及び対象文字列を一時的に退避するバッファ１４８を含む。バッファ１４８は、メモリなどにより構成されてもよい。
【００２２】
図３及び図４は、本実施の形態のデータ処理方法を説明するための図である。図３（ａ）は、編集中の文書を表示した画面の例を示す。図１に示した文書では、文字列「利根川」に、「太字」及び「下線」の属性が付加されている。図３（ｂ）は、ユーザが入力装置２２０を介して、文字列「利根川」と文字列「信濃川」を入替対象文字列として選択し、文字列を入れ替えるコマンドを入力した様子を示す。コマンド受付部１３０は、「文字列を入れ替える」命令をユーザが指定可能なユーザインタフェースを提供し、ユーザから命令を受け付ける。これにより、ユーザは文字列を入れ替えるために煩雑な操作を実行する必要が無く、「文字列を入れ替える」命令を指定するだけで、自動的に文字列の入替が実行されるので、ユーザの利便性を向上させることができる。コマンド受付部１３０は、「文字列を入れ替える」命令を受け付けると、対象文字列取得部１４２に選択された文字列を通知する。対象文字列取得部１４２は、入替対象となる文字列を取得すると、それらの文字列と、それらの文字列に付加されている属性情報とをバッファ１４８に一時的に格納する。
【００２３】
図４（ａ）は、ユーザが文字列を入れ替えるコマンドを入力したときに表示される条件指定画面の例を示す。本実施の形態では、文字列に付加された属性を考慮して入替処理を行うので、条件取得部１４４は、属性を考慮した入替条件の指定を受け付けるためのポップアップメニューをユーザに提示する。属性を考慮した入替条件には、「文字列のみを入れ替える」、「属性のみを入れ替える」、「文字列と属性を入れ替える」などがある。以下、それぞれの条件が指定されたときの入替処理の詳細を説明する。
【００２４】
図４（ｂ）は、文字列のみを入れ替える処理を実行した結果を表示した画面の例を示す。図３（ｂ）に示した２つの文字列「利根川」及び「信濃川」が入替対象文字列として選択された状態で、「文字列のみを入れ替える」条件が指定されたとき、実行部１４６は、文字列「利根川」の位置に、バッファ１４８に退避されていた文字列「信濃川」を挿入して、文字列「利根川」を削除し、さらに、文字列「信濃川」の位置に、バッファ１４８に退避されていた文字列「利根川」を挿入して、文字列「信濃川」を削除する。このとき、属性情報は入れ替えないので、入替前にその位置にあった文字列に付加されていた属性が、入替後の文字列に引き継がれる。そのため、文字列「信濃川」には、入替前の文字列「利根川」に付加されていた属性「太字」及び「下線」が適用される。
【００２５】
図４（ｃ）は、属性のみを入れ替える処理を実行した結果を表示した画面の例を示す。図３（ｂ）に示した２つの文字列「利根川」及び「信濃川」が選択された状態で、「属性のみを入れ替える」条件が指定されたとき、実行部１４６は、文字列「利根川」に付加されていた属性「太字」及び「下線」を文字列「信濃川」に付加する。また、文字列「信濃川」には属性が付加されていなかったので、文字列「利根川」に付加されていた属性を解除する。
【００２６】
図４（ｄ）は、文字列と属性を入れ替える処理を実行した結果を表示した画面の例を示す。図３（ｂ）に示した２つの文字列「利根川」及び「信濃川」が選択された状態で、「文字列と属性を入れ替える」条件が指定されたとき、実行部１４６は、文字列「利根川」の位置に、バッファ１４８に退避されていた文字列「信濃川」を属性付きで挿入して、文字列「利根川」を削除し、さらに、文字列「信濃川」の位置に、バッファ１４８に退避されていた文字列「利根川」を属性付きで挿入して、文字列「信濃川」を削除する。
【００２７】
上述した例では、入替対象となる２つの文字列をバッファ１４８に退避してから文字列の入替を実行したが、別の手順で文字列を入れ替えてもよい。例えば、まず文字列「利根川」をバッファ１４８に退避して削除し、文字列「利根川」を文字列「信濃川」の位置に挿入し、文字列「信濃川」をバッファ１４８に退避して削除し、文字列「信濃川」を文字列「利根川」があった位置に挿入してもよい。実行部１４６による文字列の入替処理の順序は任意であってよく、要は、ユーザが２つの文字列を選択してそれらを入れ替えるよう指示するだけで、自動的に文字列が入れ替えられればよい。
【００２８】
図５は、本実施の形態のデータ処理方法の手順を示すフローチャートである。まず、コマンド受付部１３０が、入力装置２２０を介してユーザにより入力された文字列入替コマンドを受け付ける（Ｓ１０）。このとき、対象文字列取得部１４２は、ユーザにより選択された入替対象文字列を取得し（Ｓ１２）、それらの文字列を属性付きでバッファ１４８に退避する（Ｓ１４）。条件取得部１４４は、属性を考慮した入替条件を受け付けるための画面をユーザに提示して、ユーザから入替条件を取得する（Ｓ１６）。実行部１４６は、ユーザから受け付けた入替条件にしたがって、属性を考慮して対象文字列を入れ替える（Ｓ１８）。実行部１４６は、バッファ１４８を利用しつつ、ユーザの介在なしに自動的に入替処理を実行する。
【００２９】
以上説明したように、本実施の形態の技術によれば、２つのデータを、それらのデータに付加された属性も考慮しつつ、自動的に入れ替えることができる。これにより、データを入れ替えるときのユーザの操作を簡略化することができ、ユーザの誤操作を防止することができる。
【００３０】
（第２の実施の形態）
第２の実施の形態では、ユーザにより選択されたデータと、バッファ（クリップボード）に退避されているデータとを入れ替える技術について説明する。この操作を繰り返すことにより、３以上のデータを順次入れ替えることができる。本実施の形態の文書処理装置１００の構成は、図１に示した第１の実施の形態の文書処理装置１００の構成と同様である。また、本実施の形態の編集部１４０の構成は、図２に示した第１の実施の形態の編集部１４０の構成と同様である。
【００３１】
図６及び図７は、本実施の形態のデータ処理方法を説明するための図である。図６（ａ）は、編集中の文書を表示した画面の例を示す。この文書に対して、まず、図６（ｂ）に示すように、ユーザが文字列「利根川」を選択して、「コピー」コマンドを指定すると、コマンド受付部１３０がそのコマンドを受け付け、対象文字列取得部１４２が文字列「利根川」をバッファ１４８に退避する。次に、図６（ｃ）に示すように、ユーザが文字列「石狩川」を選択して、「クリップボードの文字列と入れ替える」コマンドを指定すると、コマンド受付部１３０がそのコマンドを受け付け、実行部１４６が、文字列「石狩川」の位置に、バッファ１４８に退避されていた文字列「利根川」を挿入して、文字列「石狩川」を削除し、対象文字列取得部１４２が、文字列「石狩川」をバッファ１４８に退避する。このとき、先にバッファ１４８に退避されていた文字列「利根川」は、バッファ１４８から削除されてもよいし、履歴情報として残されてもよい。実行結果を図６（ｄ）に示す。
【００３２】
つづいて、図７（ａ）に示すように、ユーザが文字列「信濃川」を選択して、「クリップボードの文字列と入れ替える」コマンドを指定すると、実行部１４６は、文字列「信濃川」の位置に、バッファ１４８に退避されていた文字列「石狩川」を挿入して、文字列「信濃川」を削除し、対象文字列取得部１４２は、文字列「信濃川」をバッファ１４８に退避する。実行結果を図７（ｂ）に示す。さらに、図７（ｃ）に示すように、ユーザが文字列「利根川」を選択して、「クリップボードの文字列と入れ替える」コマンドを指定すると、実行部１４６は、文字列「利根川」の位置に、バッファ１４８に退避されていた文字列「信濃川」を挿入して、文字列「利根川」を削除し、対象文字列取得部１４２は、文字列「利根川」をバッファ１４８に退避する。実行結果を図７（ｄ）に示す。
【００３３】
このように、本実施の形態の技術によれば、３以上の文字列を入れ替えるときのユーザの操作を簡略化することができる。また、ユーザの誤操作を防止することができる。第１の実施の形態で説明したように、文字列に付加された属性を考慮して入替を実行してもよい。
【００３４】
（第３の実施の形態）
第３の実施の形態では、３以上の文字列を入替又は置換する技術について説明する。本実施の形態の文書処理装置は、３以上の入替対象文字列が選択されたときに、それらをどのように入替又は置換するかの条件をユーザから取得し、取得した条件にしたがって入替又は置換処理を実行する。本実施の形態の文書処理装置１００の構成は、図１に示した第１の実施の形態の文書処理装置１００の構成と同様である。また、本実施の形態の編集部１４０の構成は、図２に示した第１の実施の形態の編集部１４０の構成と同様である。
【００３５】
図８は、本実施の形態のデータ処理方法を説明するための図である。図８（ａ）は、図６（ａ）に示した文書において、ユーザが入力装置２２０を介して、文字列「利根川」、文字列「石狩川」、及び文字列「信濃川」を入替対象文字列として選択し、文字列を入れ替えるコマンドを入力した様子を示す。このとき、コマンド受付部１３０は、文字列を入れ替えるコマンドを受け付け、対象文字列取得部１４２に選択された文字列を通知する。対象文字列取得部１４２は、入替対象となる文字列が通知されると、それらの文字列と、それらの文字列に付加されている属性情報をバッファ１４８に格納する。
【００３６】
図８（ｂ）は、ユーザが文字列を入れ替えるコマンドを入力したときに表示される条件指定画面の例を示す。本実施の形態では、３以上の文字列の入替又は置換処理を行うので、条件取得部１４４は、それらをどのように入替又は置換するかの条件の指定を受け付けるためのポップアップメニューをユーザに提示する。図８（ｂ）に示した例では、選択された各対象文字列について、「他の対象文字列と入れ替える」、「置換しない」、「その他の文字列に置換する」、の条件が指定可能となっている。すなわち、入替先の文字列の候補として、選択された対象文字列を提示するとともに、選択された文字列以外の新たな文字列を置換先の文字列として指定することも可能となっている。さらに、第１の実施の形態と同様に、文字列に付加された属性を考慮した入替条件を受け付けてもよい。図８（ｂ）に示した例では、文字列「利根川」を文字列「信濃川」に、文字列「石狩川」を文字列「利根川」に、文字列「信濃川」を文字列「石狩川」に、それぞれ入れ替える条件が指定されている。
【００３７】
図８（ｃ）は、図８（ｂ）に示したポップアップメニューにおいてユーザから指定された条件にしたがって、文字列を入れ替える処理を実行した結果を表示した画面の例を示す。実行部１４６は、文字列「利根川」の位置に、バッファ１４８に退避されていた文字列「信濃川」を挿入して、文字列「利根川」を削除し、文字列「石狩川」の位置に、バッファ１４８に退避されていた文字列「利根川」を挿入して、文字列「石狩川」を削除し、文字列「信濃川」の位置に、バッファ１４８に退避されていた文字列「石狩川」を挿入して、文字列「信濃川」を削除する。
【００３８】
実行部１４６は、条件取得部１４４が取得した条件にもとづいて、入替又は置換の手順を自動的に生成してもよい。実行部１４６は、バッファ１４８の容量と、入替又は置換の対象となるデータのサイズに基づいて、処理の手順を決定してもよい。例えば、全ての対象データを退避するのに十分な容量のバッファ１４８があれば、全ての対象データをバッファ１４８にいったん退避してから、指定された条件にしたがってデータを入れ替えてもよい。実行部１４６は、全ての対象データを退避するのに十分な容量のバッファ１４８がなければ、第２の実施の形態で説明したような手順により、順次バッファ１４８にデータを退避しながらデータを入れ替えてもよい。
【００３９】
本実施の形態の技術によれば、３以上のデータを入替又は置換する場合であっても、ユーザが行う操作を少なくすることができ、ユーザの利便性を向上させることができるとともに、ユーザの誤操作を防止することができる。
【００４０】
（第４の実施の形態）
第４の実施の形態でも、３以上の文字列を入替又は置換する技術について説明する。本実施の形態では、文書処理装置の「置換」機能を利用して、３以上の文字列を置換する。本実施の形態の文書処理装置１００の構成は、図１に示した第１の実施の形態の文書処理装置１００の構成と同様である。また、本実施の形態の編集部１４０の構成は、図２に示した第１の実施の形態の編集部１４０の構成と同様である。
【００４１】
例えば、図６（ａ）に示した文書において、従来の文書処理装置の「置換」機能や「一括置換」機能などを用いて、文字列「利根川」を文字列「信濃川」に、文字列「信濃川」を文字列「石狩川」に、それぞれ置換する場合に、「利根川」を「信濃川」に置換した後、「信濃川」を「石狩川」に置換すると、「利根川」が「信濃川」に置換された部分が、さらに「石狩川」に置換されてしまい、ユーザが想定した結果とは異なる結果が得られてしまう。本実施の形態では、このような問題を回避するために、３以上の置換対象文字列が選択されたときに、それらをどのように入替又は置換するかの条件をユーザから取得し、取得した条件にしたがって入替又は置換の手順を自動生成して処理を実行する。具体的には、置換先の文字列の中に置換元の文字列が含まれている場合、上述したような問題が生じるので、置換元文字列を、文書中に出現しないダミーの代替文字列にいったん置換して、文字列が多重置換されたり循環置換されたりすることを回避してから、代替文字列を置換先の文字列に置換する。
【００４２】
図９は、本実施の形態のデータ処理方法を説明するための図である。図９（ａ）は、図６（ａ）に示した文書の処理中に、ユーザが入力装置２２０を介して、文字列「利根川」、文字列「石狩川」、及び文字列「信濃川」を置換対象文字列として選択し、文字列を置換するコマンドを入力したときに提示される条件指定画面の例を示す。このとき、コマンド受付部１３０は、文字列を置換するコマンドを受け付け、対象文字列取得部１４２に選択された文字列を通知する。条件取得部１４４は、ユーザから指定された条件を取得する。図９（ａ）に示した例では、文字列「信濃川」を文字列「利根川」に、文字列「利根川」を文字列「石狩川」に、文字列「石狩川」を文字列「多摩川」に、それぞれ置換する条件が指定されている。
【００４３】
ここで、置換先の文字列「利根川」及び「石狩川」は、置換元の文字列と重複しているので、置換の手順によっては、多重置換又は循環置換されてしまう恐れがある。そこで、実行部１４６は、文書中に出現しないダミーの代替文字列を３個生成し、文書中の置換元文字列「信濃川」、「利根川」、及び「石狩川」をいったん代替文字列に置換する。
【００４４】
図９（ｂ）は、置換元文字列を代替文字列に置換した様子を示す。図９（ｂ）に示した例では、実行部１４６が、文書中に出現しない３個のダミーの代替文字列「−−−」、「＊＊＊」、及び「＋＋＋」を生成し、文書中の文字列「信濃川」を代替文字列「−−−」に、文字列「利根川」をダミー文字列「＊＊＊」に、文字列「石狩川」をダミー文字列「＋＋＋」に、それぞれ置換している。なお、この途中経過画面はユーザに提示されなくてもよい。つづいて、実行部１４６は、文字列「信濃川」の代替文字列「−−−」を文字列「利根川」に、文字列「利根川」の代替文字列「＊＊＊」を文字列「石狩川」に、文字列「石狩川」の代替文字列「＋＋＋」を文字列「多摩川」に、順次一括置換する。実行結果を図９（ｃ）に示す。
【００４５】
以上の方法により、置換元文字列を置換先文字列に順次一括置換する場合であっても、適切に置換することができる。また、ユーザの操作を簡略化し、利便性を向上させることができる。上記の例では、置換先文字列の中に置換元文字列が含まれていたとき、置換元文字列の個数分ダミーの代替文字列を生成して代替文字列に置き換えたが、別の例では、重複している文字列のみを代替文字列に置き換えてもよい。また、実行部１４６が順次一括置換を行う場合、次に一括置換する置換先文字列が、まだ置換されていない置換元文字列と重複しているときに、ダミーの代替文字列を生成して、置換元文字列を置き換えてもよい。
【００４６】
図１０は、本実施の形態のデータ処理方法の手順を示すフローチャートである。まず、コマンド受付部１３０が、入力装置２２０を介してユーザにより入力された文字列置換コマンドを受け付ける（Ｓ３０）。このとき、対象文字列取得部１４２は、ユーザにより選択された置換対象文字列を取得する（Ｓ３２）。条件取得部１４４は、置換の条件を受け付けるための画面をユーザに提示して、ユーザから条件を取得する（Ｓ３４）。実行部１４６は、ユーザから置換条件を取得すると、置換先の文字列の中に置換元の文字列が含まれるか否かを判断する（Ｓ３６）。含まれている場合は（Ｓ３６のＹ）、実行部１４６は、文書中に出現しないダミー文字列を置換元の文字列の個数分生成し（Ｓ３８）、置換元の文字列を生成したダミー文字列に順次一括置換する（Ｓ４０）。その後、実行部１４６は、ダミー文字列を置換先文字列に順次一括置換する（Ｓ４２）。置換先の文字列の中に置換元の文字列が含まれていない場合は（Ｓ３６もＮ）、そのまま一括置換しても問題ないので、実行部１４６は、置換元文字列を置換先文字列に順次一括置換する（Ｓ４４）。
【００４７】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【図面の簡単な説明】
【００４８】
【図１】第１の実施の形態に係るデータ処理装置の一例である文書処理装置の構成を示す図である。
【図２】図１に示した編集部のうち、本実施の形態のデータ入替方法に関連する機能ブロックを示す図である。
【図３】第１の実施の形態のデータ処理方法を説明するための図である。
【図４】第１の実施の形態のデータ処理方法を説明するための図である。
【図５】第１の実施の形態のデータ処理方法の手順を示すフローチャートである。
【図６】第２の実施の形態のデータ処理方法を説明するための図である。
【図７】第２の実施の形態のデータ処理方法を説明するための図である。
【図８】第３の実施の形態のデータ処理方法を説明するための図である。
【図９】第４の実施の形態のデータ処理方法を説明するための図である。
【図１０】第４の実施の形態のデータ処理方法の手順を示すフローチャートである。
【符号の説明】
【００４９】
１００  文書処理装置、１１０  文書保持部、１２０  表示部、１３０  コマンド受付部、１４０  編集部、１４２  対象文字列取得部、１４４  条件取得部、１４６  実行部、１４８  バッファ、２００  記憶装置、２１０  表示装置、２２０  入力装置。
【図１】
2005222164.tif 000003
【図２】
2005222164.tif 000004
【図３】
2005222164.tif 000005
【図４】
2005222164.tif 000006
【図５】
2005222164.tif 000007
【図６】
2005222164.tif 000008
【図７】
2005222164.tif 000009
【図８】
2005222164.tif 000010
【図９】
2005222164.tif 000011
【図１０】
2005222164.tif 000012