(57)【要約】【課題】文字列の置換作業をユーザが簡単に行うことが可能な技術を提供する。【解決手段】本開示の一側面に係る文字列の置換方法は、複数の処理対象文字列が選択されたことを条件に、複数の処理対象文字列のそれぞれにおける共通部分及び非共通部分を判別するステップ（Ｓ１１０）を含む。この方法は更に、複数の処理対象文字列に対応する単一文字列であって、判別された共通部分を、対応する共通文字で表し、非共通部分を、対応する符号で表す単一文字列を、ディスプレイに表示させるステップ（Ｓ１２０）を含む。この方法は更に、ディスプレイに表示された単一文字列に対する変更操作を受け付けるステップ（Ｓ１５０）と、変更操作による変更後の単一文字列である変更文字列に基づいて、複数の処理対象文字列のそれぞれを、変更文字列に従う文字列に置換するステップ（Ｓ１５５，Ｓ１８５）と、を含む。【選択図】図３
2020095329.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータにより実行される文字列の置換方法であって、
ユーザインタフェースを通じて複数の処理対象文字列が選択されたことを条件に、前記複数の処理対象文字列のそれぞれにおける、前記複数の処理対象文字列の間で共通する文字部分である共通部分、及び、前記複数の処理対象文字列の間で共通しない文字部分である非共通部分を判別するステップと、
前記複数の処理対象文字列に対応する単一文字列であって、前記判別するステップにより判別された前記共通部分を、対応する共通文字で表し、前記非共通部分を、対応する符号で表す単一文字列を、ディスプレイに表示させるステップと、
前記ディスプレイに表示された前記単一文字列に対する変更操作を前記ユーザインタフェースを通じて受け付けるステップと、
前記変更操作による変更後の前記単一文字列である変更文字列に基づいて、前記複数の処理対象文字列のそれぞれを、前記変更文字列に従う文字列に置換するステップと、
を含む置換方法。
【請求項２】
請求項１記載の置換方法であって、
置換指示を前記ユーザインタフェースを通じて受け付けるステップを含み、
前記置換するステップでは、前記置換指示が前記ユーザインタフェースを通じて入力されたことを条件に、前記複数の処理対象文字列のそれぞれを、前記変更文字列に従う文字列に置換する置換方法。
【請求項３】
請求項２記載の置換方法であって、
前記変更文字列に、使用不可文字が含まれる場合には、前記置換指示が入力される前に、前記使用不可文字が含まれることを警告するメッセージを、前記ディスプレイに表示させるステップを更に含む置換方法。
【請求項４】
請求項２又は請求項３記載の置換方法であって、
前記複数の処理対象文字列の少なくとも一つが置換不可能な状態にある場合には、前記置換指示が入力される前に、前記置換不可能であることを警告するメッセージを、前記ディスプレイに表示させるステップを更に含む置換方法。
【請求項５】
請求項１〜請求項４のいずれか一項記載の置換方法であって、
前記単一文字列とは別に、前記複数の処理対象文字列を、前記ディスプレイに表示させるステップを更に含む置換方法。
【請求項６】
請求項２〜請求項４のいずれか一項記載の置換方法であって、
前記単一文字列とは別に、前記複数の処理対象文字列を、前記ディスプレイに表示させ、更には、前記置換指示が入力される前に、前記複数の処理対象文字列を仮に前記変更文字列に基づき置換した場合の置換後の文字列を、前記複数の処理対象文字列に代えて、又は加えて、前記ディスプレイに表示させるように、前記ディスプレイを制御するステップを更に含む置換方法。
【請求項７】
請求項６記載の置換方法であって、
前記ディスプレイを制御するステップでは、前記ユーザインタフェースを通じた切替指示に基づいて、前記ディスプレイにおける前記複数の処理対象文字列及び前記置換後の文字列の少なくとも一方の表示及び非表示を切り替えるように、前記ディスプレイを制御する置換方法。
【請求項８】
請求項６又は請求項７記載の置換方法であって、
前記単一文字列に、前記非共通部分として、複数の非共通部分に対応する複数の符号が含まれる場合に、前記複数の符号のそれぞれに異なる表示形態を割り当てるステップ
を含み、
前記ディスプレイに前記単一文字列を表示させるステップでは、前記複数の符号のそれぞれを割り当てられた表示形態で表示するように、前記ディスプレイに、前記複数の符号を含む前記単一文字列を表示させ、
前記ディスプレイを制御するステップでは、前記複数の処理対象文字列のそれぞれに含まれる前記非共通部分のそれぞれを、対応する符号に割り当てられた表示形態で表示するように、前記ディスプレイに、前記複数の処理対象文字列を表示させる置換方法。
【請求項９】
請求項８記載の置換方法であって、
前記割り当てるステップでは、前記複数の符号のそれぞれに前記異なる表示形態として異なる色が割り当てられ、
前記複数の符号のそれぞれは、割り当てられた色で表示され、
前記非共通部分のそれぞれは、対応する符号に割り当てられた色で表示される置換方法。
【請求項１０】
請求項１〜請求項９のいずれか一項記載の置換方法であって、
前記複数の処理対象文字列のそれぞれは、ファイルシステムにおける個別のデータファイル及びフォルダの少なくとも一方の名称を表す文字列である置換方法。
【請求項１１】
請求項１〜請求項９のいずれか一項記載の置換方法であって、
前記複数の処理対象文字列は、スプレッドシートにおける複数のセル内の文字列である置換方法。
【請求項１２】
請求項１〜請求項１１のいずれか一項記載の置換方法を、コンピュータに実行させるためのコンピュータプログラム。
【請求項１３】
ユーザインタフェースを通じて複数の処理対象文字列が選択されたことを条件に、前記複数の処理対象文字列のそれぞれにおける、前記複数の処理対象文字列の間で共通する文字部分である共通部分、及び、前記複数の処理対象文字列の間で共通しない文字部分である非共通部分を判別する判別部と、
前記複数の処理対象文字列に対応する単一文字列であって、前記判別部により判別された前記共通部分を、対応する共通文字で表し、前記非共通部分を、対応する符号で表す単一文字列を、ディスプレイに表示させる表示制御部と、
前記ディスプレイに表示された前記単一文字列に対する変更操作を前記ユーザインタフェースを通じて受け付ける受付部と、
前記変更操作による変更後の前記単一文字列である変更文字列に基づいて、前記複数の処理対象文字列のそれぞれを、前記変更文字列に従う文字列に置換する置換処理部と、
を含む情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、置換方法、コンピュータプログラム、及び情報処理システムに関する。
【背景技術】
【０００２】
複数のデータファイルに関して、ファイル名に含まれる共通の文字列を一括置換する技術が既に知られている（例えば、特許文献１参照）。複数のファイル名を表示する際に、これら複数のファイル名を比較し、その比較結果に基づき、それぞれのファイル名の表示形態を変更する技術も知られている（例えば、特許文献２参照）。正規表現を用いて複数の文字列を置換する技術も知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−３３０８４２号公報
【特許文献２】特開２００９−１６３５６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
正規表現を用いた従来の置換技術は、様々な形態の文字列置換に活用できるが、文字列を置換するための置換式の記述に自由度が高く、置換のために高度な知識を必要とする。即ち、この技術を扱うためには、ユーザは、学習コストの高い正規表現を習得しなければならない。更には、置換作業の度に、置換対象の複数の文字列を分析して、目的の置換結果を生むように置換式を手作業で作成しなければならない。
【０００５】
特許文献１記載の技術は、作業性の点で優れているものの、この技術では、自由度が低い。この技術によれば、ユーザは、置換対象の複数の文字列に関して、コンピュータにより抽出された共通の文字列を、別の文字列に置換できる。しかしながら、それ以外の自由な置換を行うことができない。従って、特許文献１記載の技術では、ユーザが目的とする置換結果を生じさせるようには、複数の文字列を置換できない場合も多い。
【０００６】
そこで、本開示の一側面によれば、自由度の高い文字列の置換作業をユーザが従来よりも簡単に行うことが可能な技術を提供できることが望ましい。
【課題を解決するための手段】
【０００７】
本開示の一側面によれば、コンピュータにより実行される文字列の置換方法が提供される。この方法は、ユーザインタフェースを通じて複数の処理対象文字列が選択されたことを条件に、複数の処理対象文字列のそれぞれにおける共通部分及び非共通部分を判別するステップを含む。共通部分は、複数の処理対象文字列の間で共通する文字部分である。非共通部分は、複数の処理対象文字列の間で共通しない文字部分である。
【０００８】
この方法は更に、複数の処理対象文字列に対応する単一文字列であって、上記判別するステップにより判別された共通部分を、対応する共通文字で表し、非共通部分を、対応する符号で表す単一文字列を、ディスプレイに表示させるステップを含む。
【０００９】
この方法は更に、ディスプレイに表示された単一文字列に対する変更操作を、ユーザインタフェースを通じて受け付けるステップと、変更操作による変更後の単一文字列である変更文字列に基づいて、複数の処理対象文字列のそれぞれを、変更文字列に従う文字列に置換するステップと、を含む。
【００１０】
この置換方法によれば、単一文字列に対する変更操作により、自由度の高い変更操作を、ユーザインタフェースを通じて受け付けることができる。一例によれば、共通文字の変更操作、及び、符号と共通文字との間の記載順の変更操作を受け付けることができる。
【００１１】
この変更操作は、正規表現を用いた従来の置換技術のようには、高度な知識を必要としない。更には、複数の処理対象文字列の分析もコンピュータにより実現されるので、ユーザは、自ら分析を行い、一から置換式を組み立てる必要もない。置換式に対応するコンピュータにより生成された単一文字列に対する変更操作で、ユーザは、自由度の高い置換作業を行うことができる。
【００１２】
従って、本開示の一側面によれば、自由度の高い文字列の置換作業をユーザが従来よりも簡単に行うことが可能な技術を提供することができる。
【００１３】
本開示の一側面によれば、上記置換方法は、置換指示を、ユーザインタフェースを通じて受け付けるステップを含んでいてもよい。上記置換するステップでは、置換指示がユーザインタフェースを通じて入力されたことを条件に、複数の処理対象文字列のそれぞれを、変更文字列に従う文字列に置換することができる。
【００１４】
本開示の一側面によれば、上記置換方法は更に、変更文字列に、使用不可文字が含まれる場合には、置換指示が入力される前に、使用不可文字が含まれることを警告するメッセージを、ディスプレイに表示させるステップを更に含んでいてもよい。本開示の一側面によれば、上記置換方法は更に、複数の処理対象文字列の少なくとも一つが置換不可能な状態にある場合には、置換指示が入力される前に、置換不可能であることを警告するメッセージを、ディスプレイに表示させるステップを含んでいてもよい。
【００１５】
上記警告によれば、置換指示に従う文字列の置換を行うことができないことで、置換指示前に行うユーザの確認作業等の一部作業が無駄になるのを抑制することができる。従って、本開示の一側面によれば、利便性の高い置換方法を提供することができる。
【００１６】
本開示の一側面によれば、上記置換方法は更に、単一文字列とは別に、複数の処理対象文字列を、ディスプレイに表示させるステップを含んでいてもよい。
【００１７】
本開示の一側面によれば、上記置換方法は更に、単一文字列とは別に、複数の処理対象文字列を、ディスプレイに表示させ、更には、置換指示が入力される前に、複数の処理対象文字列を仮に変更文字列に基づき置換した場合の置換後の文字列を、複数の処理対象文字列に代えて、又は加えて、ディスプレイに表示させるように、ディスプレイを制御するステップを含んでいてもよい。このディスプレイ制御によれば、ユーザによる置換結果の正確な事前把握が可能である。
【００１８】
本開示の一側面によれば、ディスプレイを制御するステップでは、ユーザインタフェースを通じた切替指示に基づいて、ディスプレイにおける複数の処理対象文字列及び置換後の文字列の少なくとも一方の表示及び非表示を切り替えるように、ディスプレイを制御してもよい。
【００１９】
本開示の一側面によれば、上記置換方法は更に、単一文字列に、複数の非共通部分に対応する複数の符号が含まれる場合に、複数の符号のそれぞれに異なる表示形態を割り当てるステップを含んでいてもよい。ディスプレイに単一文字列を表示させるステップでは、複数の符号のそれぞれを割り当てられた表示形態で表示するように、ディスプレイに、複数の符号を含む単一文字列を表示させてもよい。ディスプレイを制御するステップでは、複数の処理対象文字列のそれぞれに含まれる非共通部分のそれぞれを、対応する符号に割り当てられた表示形態で表示するように、ディスプレイに、複数の処理対象文字列を表示させてもよい。
【００２０】
表示形態の相違により、単一文字列及び複数の処理対象文字列を、ユーザが対応関係を識別可能に表示すれば、ユーザによる置換作業の作業性が向上する。ここでいう表示形態の例には、表示色により定義される表示形態が含まれる。例えば、上記割り当てるステップでは、複数の符号のそれぞれに異なる色が割り当てられてもよく、複数の符号のそれぞれは、割り当てられた色で表示されてもよく、非共通部分のそれぞれは、対応する符号に割り当てられた色で表示されてもよい。
【００２１】
本開示の一側面によれば、複数の処理対象文字列のそれぞれは、ファイルシステムにおける個別のデータファイル及びフォルダの少なくとも一方の名称を表す文字列であってもよい。本開示の方法をファイルシステムに適用することにより、ファイルシステムで取り扱うデータファイルの名称変換に関する作業性が向上する。
【００２２】
本開示の一側面によれば、複数の処理対象文字列は、スプレッドシートにおける複数のセル内の文字列であってもよい。本開示の方法をスプレッドシートに適用することにより、スプレッドシートで取り扱う文字列の置換に関する作業性が向上する。
【００２３】
本開示の一側面によれば、上述した置換方法を、コンピュータに実行させるためのコンピュータプログラムが提供されてもよい。当該コンピュータプログラムを記憶するコンピュータ読取可能な記録媒体が提供されてもよい。本開示の一側面によれば、上述した置換方法を実行する情報処理システムが提供されてもよい。
【００２４】
本開示の一側面によれば、ユーザインタフェースを通じて複数の処理対象文字列が選択されたことを条件に、複数の処理対象文字列のそれぞれにおける共通部分及び非共通部分を判別する判別部と、複数の処理対象文字列に対応する単一文字列であって、判別部により判別された共通部分を、対応する共通文字で表し、非共通部分を、対応する符号で表す単一文字列を、ディスプレイに表示させる表示制御部と、ディスプレイに表示された単一文字列に対する変更操作を、ユーザインタフェースを通じて受け付ける受付部と、変更操作による変更後の単一文字列である変更文字列に基づいて、複数の処理対象文字列のそれぞれを、変更文字列に従う文字列に置換する置換処理部と、を含む情報処理システムが提供されてもよい。この情報処理システムは、上記置換方法と同様の効果を奏する。
【図面の簡単な説明】
【００２５】
【図１】情報処理システムの構成を表すブロック図である。
【図２】置換プログラムの利用に関する説明図である。
【図３】第一実施形態でプロセッサが実行する処理を表すフローチャートである。
【図４】操作ウィンドウの第一表示例を示す図である。
【図５】操作ウィンドウの第二表示例を示す図である。
【図６】操作ウィンドウの第三表示例を示す図である。
【図７】警告表示の第一例を示す図である。
【図８】警告表示の第二例を示す図である。
【図９】スプレッドシートにおける置換プログラムの利用に関する説明図である。
【図１０】第二実施形態でプロセッサが実行する処理を表すフローチャートである。
【発明を実施するための形態】
【００２６】
以下に本開示の例示的実施形態を、図面と共に説明する。
［第一実施形態］
本実施形態の情報処理システム１は、図１に示すように、プロセッサ１１と、メモリ１３と、ストレージデバイス１５と、ディスプレイ１７と、入力デバイス１９とを備える。この情報処理システム１は、例えば汎用のパーソナルコンピュータにより構成される。
【００２７】
プロセッサ１１は、ストレージデバイス１５に格納されたコンピュータプログラムに従う処理を実行し、各種機能を実現するように構成される。メモリ１３は、ＲＡＭを含む。ストレージデバイス１５は、各種コンピュータプログラム及びデータファイルを記憶する補助記憶装置として機能する。ストレージデバイス１５の例には、ソリッドステートドライブ（ＳＳＤ）及びハードディスクドライブ（ＨＤＤ）が含まれる。
【００２８】
ストレージデバイス１５が記憶するコンピュータプログラムには、例えばウィンドウズ（登録商標）等のオペレーティングシステム（ＯＳ）が含まれる。ＯＳは、ファイルシステム、及び、グラフィカルユーザインタフェース（ＧＵＩ）を提供するデスクトップ環境を提供する。
【００２９】
ディスプレイ１７は、プロセッサ１１により制御されて、ユーザ向けの各種情報を表示するように構成される。ディスプレイ１７の例には、液晶ディスプレイ及び有機ＥＬディスプレイが含まれる。入力デバイス１９は、ユーザによる操作信号をプロセッサ１１に伝達するように構成される。入力デバイス１９の例には、キーボード及びポインティングデバイスが含まれる。
【００３０】
続いて、本実施形態に特徴的な処理の詳細を説明する。情報処理システム１には、ＣＤ−ＲＯＭやメモリカード等のコンピュータ読取可能な可搬性の記録媒体や、インターネット等の広域ネットワークを通じて、ファイル名の一括置換を実現するための置換プログラムがインストールされる。
【００３１】
ストレージデバイス１５には、ファイルシステムで管理される複数のデータファイルが含まれる。これらのデータファイルには、ユーザにより生成されたデータファイルが含まれる。周知のように、ユーザにより生成されるデータファイルには、ユーザが自由にファイル名を付与することができる。
【００３２】
ユーザには、これら複数のデータファイルのファイル名を効率よく一括置換したいというニーズがある。ストレージデバイス１５に格納される置換プログラムは、このファイル名の一括置換に関して優れた機能を提供する。
【００３３】
ユーザは、入力デバイス１９を通じたデスクトップ環境に対する操作により、ファイル名の一括置換を所望するリネーム対象の複数のデータファイルを選択した状態で、置換プログラムに従う処理の実行を指示することにより、図３に示す処理をプロセッサ１１に実行させることができる。そして、この処理によりディスプレイ１７に表示される操作ウィンドウ（図４参照）を通じて、ファイル名の一括置換に関する操作を入力することができる。
【００３４】
例えば、ユーザは、図２に示すように、デスクトップ環境においてアイコンとして表示される複数のファイルを、マウスを用いて選択した後、マウスに対する右クリック操作を行うことにより、コンテキストメニューをディスプレイ１７に表示させ、コンテキストメニューの中から、予めインストールされた置換プログラムに対応するアイテム、図２では「一括置換」と名づけられたアイテムを選択することができる。
【００３５】
ユーザは、このアイテムの選択により、置換プログラムに従う処理の実行指示を、入力デバイス１９を通じてプロセッサ１１に入力することができる。あるいは、ユーザは、予め割り当てられたキーボード上のショートカットキーを押下操作することにより、置換プログラムに従う処理の実行指示を、入力デバイス１９を通じてプロセッサ１１に入力してもよい。
【００３６】
プロセッサ１１は、上記実行指示の入力により図３に示す処理を開始すると、先駆けてユーザにより選択されたリネーム対象の複数のデータファイルの現在のファイル名を分析する（Ｓ１１０）。
【００３７】
Ｓ１１０において、プロセッサ１１は、リネーム対象の複数のデータファイルのそれぞれについて、そのファイル名の共通部分及び非共通部分を判別することができる。ここでいう共通部分は、対応するデータファイルのファイル名を構成する文字列のうち、リネーム対象の複数のデータファイル間で共通する文字列部分である。非共通部分は、対応するデータファイルのファイル名を構成する文字列のうち、上記共通部分に該当しない文字列部分である。
【００３８】
例えば、リネーム対象の複数のデータファイルが、図４に例示するように、「［職員会議］配布資料成績評価について2018年04月12日.docx」と名付けられた第一データファイル、「［線形代数］講義資料行列とは2018年04月01日.pptx」と名付けられた第二データファイル、「［微分積分学］講義資料数列と極限2018年04月02日.docx」と名づけられた第三データファイルを含む、合計３つのデータファイルである場合を考える。
【００３９】
この場合、第一、第二、及び第三データファイルに関して、プロセッサ１１は、複数の共通部分「［」「］」「資料」「2018年04月」「日.」を判別する。更に、プロセッサ１１は、第一データファイルに関して、複数の非共通部分「職員会議」「配布」「成績評価について」「12」「docx」を判別する。
【００４０】
第二データファイルに関して、プロセッサ１１は、複数の非共通部分「線形代数」「講義」「行列とは」「01」「pptx」を判別し、第三データファイルに関して、複数の非共通部分「微分積分学」「講義」「数列と極限」「02」「docx」を判別する。
【００４１】
文字列の比較技術としては、最長共通部分列問題に対する動的計画法のように、いくつかの技術が既に知られている。Ｓ１１０における分析も、このような既知の技術を利用又は応用して実現することができる。
【００４２】
Ｓ１１０での分析後、プロセッサ１１は、リネーム対象の複数のデータファイルのファイル名を統合表現した単一文字列を生成すると共に、この単一文字列を置換式の初期値としてリネーム対象の各データファイルのファイル名と共に記述した図４に例示する操作ウィンドウをディスプレイ１７に表示させる（Ｓ１２０）。
【００４３】
図４に例示される操作ウィンドウは、置換式の入力欄を上段に有し、リネーム対象の複数のデータファイルのファイル名を表示するファイル名表示欄を下段に有する。入力欄には、置換式の初期値として上記単一文字列が表示される。ファイル名表示欄には、入力欄に表示される置換式がユーザの操作により初期値から変更されるまで、リネーム対象の複数のデータファイルの現在のファイル名が表示される。置換式が初期値から変更された後、ファイル名表示欄には、リネーム対象の複数のデータファイルについての、変更後の置換式に基づくリネーム後のファイル名が表示される。
【００４４】
図４から理解できるように、置換式の初期値として表示される単一文字列は、リネーム対象の複数のデータファイルの現在のファイル名における共通部分を、対応する共通文字で表現し、非共通部分を、対応する符号で抽象表現する文字列である。
【００４５】
図４に示される単一文字列は、「［<1>］<2>資料<3>2018年04月<4>日.<5>」である。この例において単一文字列には、複数の共通文字として「［」「］」「資料」「2018年04月」「日.」が含まれ、複数の符号として、複数の非共通部分のそれぞれを区別して表す符号<1><2><3><4><5>が含まれる。
【００４６】
ここで符号<1>は、第一データファイルのファイル名に含まれる「職員会議」、第二データファイルのファイル名に含まれる「線形代数」、及び、第三データファイルのファイル名に含まれる「微分積分学」に対応する。
【００４７】
同様に、符号<2>は、第一、第二、及び第三データファイルのファイル名に含まれる「配布」「講義」及び「講義」のそれぞれに対応し、符号<3>は、「成績評価について」「行列とは」及び「数列と極限」のそれぞれに対応し、符号<4>は、「12」「01」及び「02」のそれぞれに対応し、符号<5>は、「docx」「pptx」及び「docx」のそれぞれに対応する。
【００４８】
Ｓ１２０において、プロセッサ１１は、所定規則により、複数の符号<1><2><3><4><5>のそれぞれに異なる色を割り当て、単一文字列に含まれる各符号<1><2><3><4><5>を、対応する色で入力欄に表示し、リネーム対象の複数のデータファイルのファイル名に含まれる非共通部分を、対応する符号に割り当てられた色で下段に表示する操作ウィンドウをディスプレイ１７に表示させる。
【００４９】
例えば、符号<1>に対しては、赤色が割り当てられ、符号<2>に対して青色が割り当てられる。この場合、操作ウィンドウの入力欄には、置換式に含まれる符号<1>が赤色で表示され、符号<2>が青色で表示される。更に、操作ウィンドウの下段には、符号<1>に対応する文字列「職員会議」「線形代数」及び「微分積分学」が赤色で表示され、符号<2>に対応する文字列「配布」「講義」及び「講義」が青色で表示される。
【００５０】
プロセッサ１１は、操作ウィンドウをディスプレイ１７に表示させると、Ｓ１３０に移行し、操作ウィンドウに対するユーザの入力デバイス１９を通じた操作を受け付ける。そして、操作がなされると、Ｓ１４０〜Ｓ１９０の処理により、操作に対応する処理を実行する。
【００５１】
Ｓ１３０において、プロセッサ１１は、新たなデータファイルをリネーム対象として追加する操作を受け付けることができる。例えば、ユーザは、操作ウィンドウの下部に、リネーム対象として新たに追加したいデータファイルのアイコンを、ドラッグアンドドロップすることにより、新たなデータファイルをリネーム対象に追加することができる。
【００５２】
プロセッサ１１は、操作ウィンドウに対する操作がなされたと判断し（Ｓ１３０でＹｅｓ）、なされた操作が新たなデータファイルをリネーム対象に追加する操作であると判断すると（Ｓ１４０でＹｅｓ）、Ｓ１４１に移行する。
【００５３】
Ｓ１４１において、プロセッサ１１は、追加されたデータファイルを含むリネーム対象の全てのデータファイルのファイル名を再分析して、データファイル毎に、ファイル名の共通部分及び非共通部分を判別する。プロセッサ１１は、この判別結果に基づき、ディスプレイ１７における操作ウィンドウの表示内容を更新する（Ｓ１４５）。
【００５４】
即ち、プロセッサ１１は、再分析結果に基づき、追加されたデータファイルを含むリネーム対象の複数のデータファイルのファイル名を統合表現した単一文字列を生成して、この単一文字列を置換式として、リネーム対象の各データファイルのファイル名と共にディスプレイ１７に表示させるように、操作ウィンドウの表示内容を更新する（Ｓ１４５）。その後、次の操作を受け付ける（Ｓ１３０）。
【００５５】
プロセッサ１１は、操作ウィンドウに対する操作がなされたと判断し（Ｓ１３０でＹｅｓ）、なされた操作が操作ウィンドウに表示される置換式に対する変更操作であると判断すると（Ｓ１５０でＹｅｓ）、Ｓ１５５に移行して、操作ウィンドウの表示内容を、変更された置換式に従う内容に更新する。
【００５６】
即ち、プロセッサ１１は、操作ウィンドウの入力欄に変更後の置換式が表示され、操作ウィンドウの下段に、変更後の置換式に従うリネーム対象のデータファイルの置換後のファイル名が表示されるように、操作ウィンドウの表示内容を更新する（Ｓ１５５）。ここで表示される置換後のファイル名は、変更後の置換式に従って「仮に」対応するデータファイルのファイル名を置換したときのファイル名である。即ち、Ｓ１５５で、実際にデータファイルのファイル名が変更されるわけではないことを留意されたい。
【００５７】
図５に示す例によれば、置換式は、図４に示される「［<1>］<2>資料<3>2018年04月<4>日.<5>」から、図５に示される「(2018-04-<4>)<1>-<3>.<5>」に変更されている。この場合、操作ウィンドウの下段に、置換後のファイル名として、第一データファイルについて文字列「(2018-04-12)職員会議-成績評価について.docx」が表示され、第二データファイルについて文字列「(2018-04-01)線形代数-行列とは..pptx」が表示され、第三データファイルについて文字列「(2018-04-02)微分積分学-数列と極限.docx」が表示されるように、プロセッサ１１は、操作ウィンドウの表示内容を更新する。その後、次の操作を受け付ける（Ｓ１３０）。
【００５８】
図４と図５との比較から理解できるように、本実施形態では、置換式の変更操作として、共通文字の変更、追加、移動、及び削除操作、並びに、非共通部分（符号）の移動及び削除操作を受け付けることができる。「移動」操作は、文字列全体における共通／非共通文字の記載位置を変更する操作に対応する。この操作の多様性は、置換式に対する操作によって、ユーザが自由度高く、リネーム対象のデータファイルのファイル名を一括置換可能であることを意味する。
【００５９】
プロセッサ１１は、操作ウィンドウに対する操作がなされたと判断し（Ｓ１３０でＹｅｓ）、なされた操作が表示モードの変更操作であると判断すると（Ｓ１６０でＹｅｓ）、Ｓ１６５に移行して、操作ウィンドウの表示を、変更後の表示モードに対応する態様に切り替える。その後、次の操作を受け付ける（Ｓ１３０）。
【００６０】
例えば、ユーザは、操作ウィンドウの右上に位置する操作オブジェクト「オプション」に対する入力デバイス１９を通じた操作により、表示モードを、簡易モードと詳細モードとの間で切り替えるように表示モードの変更操作を行うことができる。図４及び図５に示される操作ウィンドウは、簡易モードで表示される操作ウィンドウである。これに対し、図６に示される操作ウィンドウは、詳細モードで表示される操作ウィンドウである。
【００６１】
図６から理解できるように、詳細モードでは、操作ウィンドウの下段で、リネーム対象の複数のデータファイルのそれぞれのファイル名として、現在のファイル名と共に、置換式に従う置換後のファイル名が並列表示される。即ち、簡易モードでは、置換式が変更されると、操作ウィンドウに表示されるリネーム対象の複数のデータファイルのファイル名が変更後の置換式に従うファイル名に変更されるが、詳細モードでは、置換式に従う置換後のファイル名が、現在のファイル名に追加して表示される。
【００６２】
更に、詳細モードでは、操作ウィンドウの上段において、第一及び第二の入力欄が表示される。第一の入力欄は、図６に示される入力欄のうち最上段の入力欄であり、第二の入力欄は、第一の入力欄の下に位置する入力欄である。
第二の入力欄は、簡易モードの入力欄と同じ機能を果たす。即ち、第二の入力欄には、変更操作を受付可能な状態で、置換式の初期値としてリネーム対象の複数のデータファイルに対応する単一文字列が表示される。
【００６３】
一方、第一の入力欄には、リネーム対象の複数のデータファイルについての置換前のファイル名を統合表現した文字列が、パターン表現式として表示される。第一の入力欄に初期表示される文字列は、第二の入力欄に初期表示される文字列と同じである。
【００６４】
即ち、第一の入力欄は、プロセッサ１１が分析したリネーム対象の複数のデータファイルについてのファイル名のパターンに基づく自動生成されたパターン表現式としての単一文字列が、ユーザにとって満足するものではないときに、パターン表現式の修正操作を受付可能に構成される。第一の入力欄において、ユーザは高度な正規表現をパターン表現式として使用することも可能である。
【００６５】
このように、詳細モードでは、置換式の変更操作だけではなく、その基礎となるパターン表現式の修正操作をユーザから受付可能に、操作ウィンドウが表示される。付言すれば、記号＜＞を用いた表現では、パターン表現式と置換式とを同じにすることが、ファイル名を変更しないことを表すが、正規表現を使用する場合には、そうではない。
【００６６】
この他、プロセッサ１１は、操作ウィンドウに対する操作がなされたと判断し（Ｓ１３０でＹｅｓ）、なされた操作がキャンセル操作であると判断すると（Ｓ１７０でＹｅｓ）、操作ウィンドウに対するこれまでのユーザの操作を破棄し、リネーム対象のデータファイルに対するファイル名の置換処理を実行することなく、図３に示す処理を終了する。キャンセル操作は、例えば、操作ウィンドウを閉じる操作に対応する。
【００６７】
プロセッサ１１は、操作ウィンドウに対する操作がなされたと判断し（Ｓ１３０でＹｅｓ）、なされた操作が置換指示操作であると判断すると（Ｓ１８０でＹｅｓ）、Ｓ１８５に移行し、置換処理を実行する。即ち、リネーム対象の複数のデータファイルのファイル名を、操作ウィンドウに示される置換式に従うファイル名に置換する。これにより、リネーム対象の各データファイルのファイル名が、操作ウィンドウに表示される置換後のファイル名に、実際に変更される。
【００６８】
置換指示操作は、ユーザが操作ウィンドウ内の確定ボタンを押下操作することに対応する。入力デバイス１９としてのキーボードにおける特定キー（例えば、エンターキー）の押下操作も、置換指示操作の例に含まれ得る。置換指示操作がなされた場合、特には特定キーが押下操作された場合には、置換を実行してもよいか否かを問い合わせるダイアログボックスをディスプレイ１７に表示させてもよい。
【００６９】
置換処理を終了すると、プロセッサ１１は、操作ウィンドウを閉じて、図３に示す処理を終了する。プロセッサ１１は、上述した操作以外の他の操作がなされた場合、なされた操作に対応する処理を実行する（Ｓ１９０）。Ｓ１９０では、上述したパターン表現式に対する修正操作がなされた場合に、その操作に対応して、パターン表現式を修正し、第一の入力欄の表示を更新することができる。プロセッサ１１は、その後、Ｓ１３０に移行し、次の操作を受け付ける。
【００７０】
以上に説明した第一実施形態の情報処理システム１は、リネーム対象の複数のデータファイルのファイル名を分析して、これら統合表現した単一文字列を置換式の初期値として表示し、その後、置換式の変更操作を受け付けて、変更後の置換式に従うファイル名の一括置換を行う。
【００７１】
従って、本実施形態によれば、ユーザは、ファイル名の置換作業時に、正規表現を用いた従来の置換技術のようには、高度な知識を必要としない。更には、リネーム対象の複数のファイル名の分析もプロセッサ１１により実現されるので、ユーザは、自ら分析を行い、一から置換式を組み立てる必要もない。プロセッサ１１により生成された置換式（単一文字列）に対する変更操作で、ユーザは、自由度の高い置換作業を行うことができる。
【００７２】
更に言えば、本実施形態では、操作ウィンドウにおいて表示されるリネーム対象の各データファイルのファイル名における複数の非共通部分を、置換式内の符号と関連付けて、同一色で表示する。従って、ユーザは、表示色を根拠に、置換後のファイル名をよく事前理解しながら、置換式を変更することができる。従って、本実施形態によれば、自由度の高い文字列の置換作業をユーザが従来よりも簡単に行うことが可能な技術を提供することができる。
【００７３】
付言すれば、プロセッサ１１は、置換式に対する変更操作を受け付けた際、変更後の置換式に、ファイル名に対して使用不可能な文字が含まれているか否かを判断し、使用不可能な文字が含まれる場合には、「名前に無効な文字が含まれています。」等の警告メッセージを、操作ウィンドウ内に表示するように、操作ウィンドウの表示内容を更新してもよい（Ｓ１５５）。図７は、「名前に無効な文字が含まれています。」との警告メッセージを含む操作ウィンドウの例示的構成を示す図である。
【００７４】
この他、プロセッサ１１は、リネーム対象の複数のデータファイルの中に、他のプロセスによって使用され、これによりファイル名を変更不可能な状態にあるデータファイルが存在するか否かを判断してもよい。そして、該当するデータファイルが存在する場合には、図８に示すように「他のプロセスによって使用されている」等の警告メッセージを、該当するデータファイルのファイル名と関連付けて操作ウィンドウ内に表示するように、ディスプレイ１７に操作ウィンドウを表示させてもよい、あるいは、操作ウィンドウの表示内容を更新してもよい（Ｓ１２０，Ｓ１４５，Ｓ１５５）。
【００７５】
同様に、プロセッサ１１は、置換後のファイル名と同じファイル名のデータファイルが既に存在することにより、リネーム対象の複数のデータファイルの中に、ファイル名を変更不可能な状態にあるデータファイルが存在するか否かを判断してもよい。そして、該当するデータファイルが存在する場合には、「置換後のファイル名と同じ名前のファイルが存在します」等の警告メッセージをディスプレイ１７に表示させてもよい（Ｓ１５５）。例えば、プロセッサ１１は、図８に示す「他のプロセスによって使用されています」とのメッセージに代えて、「置換後のファイル名と同じ名前のファイルが既に存在します」とのメッセージをディスプレイ１７に表示させることができる。
【００７６】
こうした警告メッセージの置換指示前の表示は、置換指示に従う文字列の置換を行うことができないことで、置換指示前に行うユーザの確認作業等の一部作業が無駄になる可能性を抑制することができる。従って、本実施形態によれば、利便性の高いファイル名の一括置換機能を提供することができる。
【００７７】
本実施形態によれば、置換プログラムは、データファイルだけではなくフォルダを、リネーム対象に選択可能に構成されてもよい。リネーム対象として、複数のデータファイル及びフォルダが混在してもよい。プロセッサ１１は、リネーム対象のフォルダ名を、ファイル名と同様に取り扱って、図３に示す処理を実行し、置換式に従ってフォルダ名を一括置換することができる。
【００７８】
［第二実施形態］
続いて、第二実施形態の情報処理システム１について説明する。第二実施形態は、置換プログラムが、スプレッドシートにおける複数セル内の文字列の一括置換のために構成されている点で、第一実施形態とは異なるが、情報処理システム１のハードウェア構成は、第一実施形態と同じである。従って、以下では、プロセッサ１１が置換プログラムに従って実行する処理の詳細を説明し、第一実施形態と同一構成に係る説明を省略する。
【００７９】
第二実施形態において、プロセッサ１１は、スプレッドシートに対するユーザの操作により、図９に示すように、スプレッドシートにおける複数のセルが選択された状態で、置換プログラムに従う処理の実行が指示されると、図１０に示す処理を実行する。
【００８０】
ユーザは、入力デバイス１９を通じて、文字列の一括置換を所望する複数のセルを処理対象のセルとして選択した状態で、置換プログラムに従う処理の実行を指示することができる。この処理によっては、ディスプレイ１７に図９の下段に示すＧＵＩ形式の操作ウィンドウが表示される。ユーザは、この操作ウィンドウを通じて、複数セル内の文字列の一括置換に関する操作を入力することができる。
【００８１】
例えば、ユーザは、図９に示すように、破線で囲まれた複数セルを、マウスを用いて選択した後、マウスに対する右クリック操作を行うことにより、コンテキストメニューをディスプレイ１７に表示させ、コンテキストメニューの中から、置換プログラムに対応する「一括置換」と名づけられたアイテムを選択することができる。このアイテムの選択により、置換プログラムに従う処理の実行指示を、入力デバイス１９を通じてプロセッサ１１に入力することができる。
【００８２】
プロセッサ１１は、上記実行指示の入力により図１０に示す処理を開始すると、上記実行指示に先駆けてユーザにより選択された処理対象の複数セルについてセル内の現在の文字列を分析する（Ｓ２１０）。
【００８３】
Ｓ２１０において、プロセッサ１１は、処理対象の複数セルのそれぞれについて、セル内の文字列における共通部分及び非共通部分を判別する。共通部分は、対応するセル内の文字列のうち、処理対象の複数セル間で共通する文字列部分である。非共通部分は、対応するセル内の文字列のうち、上記共通部分に該当しない文字列部分である。
【００８４】
例えば、処理対象の複数セルが、図９に例示するように、文字列「Ａ号館1階152」を有する第一セル、文字列「Ａ号館3階301」を有する第二セル、文字列「Ｂ号館1階131」を有する第三セル、文字列「本館10階1013」を有する第四セルを含む、合計４つのセルである場合を考える。
【００８５】
この場合、第一、第二、第三、及び第四セルに関して、プロセッサ１１は、複数の共通部分「館」「階」を判別する。更に、第一セルに関して、複数の非共通部分「Ａ号」「1」「152」を判別し、第二セルに関して、複数の非共通部分「Ａ号」「3」「301」を判別し、第三セルに関して、複数の非共通部分「Ｂ号」「1」「131」を判別し、第四セルに関して、複数の非共通部分「本」「10」「1013」を判別する。
【００８６】
Ｓ２１０での分析後、プロセッサ１１は、処理対象の複数セル内の文字列を統合表現した単一文字列「<1>館<2>階<3>」を生成すると共に、この単一文字列を置換式の初期値として記述した図９下段に例示する操作ウィンドウをディスプレイ１７に表示させる（Ｓ２２０）。
【００８７】
単一文字列には、複数の非共通部分のそれぞれを区別して表す符号<1><2><3>が含まれる。符号<1>は、第一、第二、第三、及び第四セル内の文字列に含まれる「Ａ号」「Ａ号」「Ｂ号」「本」のそれぞれに対応し、符号<2>は、第一、第二、第三、及び第四セル内の文字列に含まれる「1」「3」「1」「10」のそれぞれに対応し、符号<3>は、第一、第二、第三、及び第四セル内の文字列に含まれる「152」「301」「131」「1013」のそれぞれに対応する。
【００８８】
プロセッサ１１は、操作ウィンドウをディスプレイ１７に表示させると、Ｓ２３０に移行し、ユーザによる操作ウィンドウに対する入力デバイス１９を通じた操作を受け付ける。そして、操作がなされると、Ｓ２４０〜Ｓ２７０の処理により、操作に対応する処理を実行する。
【００８９】
プロセッサ１１は、操作ウィンドウに対する操作がなされたと判断し（Ｓ２３０でＹｅｓ）、なされた操作が操作ウィンドウに表示される置換式に対する変更操作であると判断すると（Ｓ２４０でＹｅｓ）、Ｓ２４１に移行して、操作ウィンドウの表示内容を、変更された置換式に従う内容に更新する。
【００９０】
更に、Ｓ２４５では、プロセッサ１１は処理対象の複数セル内の文字列を、変更後の置換式に対応する文字列に仮置換する。ここでいう仮置換は、キャンセル指示が入力された場合には、置換前の初期状態に戻すことが可能な状態で、複数セル内の文字列を、変更後の置換式に対応する文字列に置換することに対応する。その後、次の操作を受け付ける（Ｓ２３０）。
【００９１】
プロセッサ１１は、操作がなされたと判断し（Ｓ２３０でＹｅｓ）、なされた操作がキャンセル操作であると判断すると（Ｓ２５０でＹｅｓ）、操作ウィンドウに対するこれまでのユーザの操作を破棄して、処理対象の複数セル内の文字列を、置換前の初期状態に戻した後（Ｓ２５５）、操作ウィンドウを閉じて、図１０に示す処理を終了する。
【００９２】
プロセッサ１１は、操作がなされたと判断し（Ｓ２３０でＹｅｓ）、なされた操作が置換指示操作であると判断すると（Ｓ２６０でＹｅｓ）、Ｓ２６５に移行し、処理対象の複数セル内の仮置換後の文字列を、置換後の文字列として確定した後、操作ウィンドウを閉じて、図１０に示す処理を終了する。
【００９３】
プロセッサ１１は、上述した操作以外の他の操作がなされた場合、なされた操作に対応する処理を実行して（Ｓ２７０）、Ｓ２３０に移行し、次の操作がなされるまで待機する。
【００９４】
以上に説明した第二実施形態の情報処理システム１は、処理対象の複数セル内の文字列を分析して、これら統合表現した単一文字列を置換式の初期値として表示し、その後、置換式の変更操作を受け付けて、変更後の置換式に従う複数セル内の文字列の一括置換を行う。従って、本実施形態によれば、スプレッドシートにおける複数のセル内の文字列の置換作業を、自由度の高く、従来よりも簡単に行うことができる。
【００９５】
本開示が、上述した第一実施形態及び第二実施形態が限定されるものではなく、種々の態様を採ることができることは言うまでもない。例えば、本開示の置換プログラムにより実現される文字列の置換方法は、ファイル名の一括置換やセル内の文字列の一括置換に限定されるものではない。
【００９６】
第一実施形態では、置換式に従う置換後の文字列を、事前に、操作ウィンドウの下段に表示したが、置換後の文字列は事前表示されなくてもよい。この場合、操作ウィンドウの下段には、リネーム対象の複数のデータファイルの現在のファイル名が表示されてもよいし、現在のファイル名及び置換後のファイル名がいずれも表示されなくてもよい。ユーザからの切替指示に従って、現在のファイル名及び置換後のファイル名の少なくとも一方の表示及び非表示を切り替えるように、プロセッサ１１は、操作ウィンドウの表示制御を行ってもよい。
【００９７】
第一実施形態では、複数の符号<1><2><3><4><5>、及び、リネーム対象の複数のデータファイルのファイル名に含まれる非共通部分を異なる表示形態、具体的には異なる色で表示することにより、符号と非共通部分との対応関係を、ユーザに向けて明確に表示したが、その他の表示形態で上記対応関係をユーザに向けて表示してもよい。表示形態の相違は、フォントタイプ、フォントサイズ、及びフォントカラーの少なくとも一つ以上の相違に基づいて生成可能である。
【００９８】
上記実施形態における１つの構成要素が有する機能は、複数の構成要素に分散して設けられてもよい。複数の構成要素が有する機能は、１つの構成要素に統合されてもよい。上記実施形態の構成の一部は、省略されてもよい。上記実施形態の構成の少なくとも一部は、他の上記実施形態の構成に対して付加又は置換されてもよい。特許請求の範囲に記載の文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
【符号の説明】
【００９９】
１…情報処理システム、１１…プロセッサ、１３…メモリ、１５…ストレージデバイス、１７…ディスプレイ、１９…入力デバイス。
【図１】
2020095329.tif 000003
【図２】
2020095329.tif 000004
【図３】
2020095329.tif 000005
【図４】
2020095329.tif 000006
【図５】
2020095329.tif 000007
【図６】
2020095329.tif 000008
【図７】
2020095329.tif 000009
【図８】
2020095329.tif 000010
【図９】
2020095329.tif 000011
【図１０】
2020095329.tif 000012