説明

文書処理装置およびプログラム

【課題】ユーザが意図する検索および置換を行うことが可能な文書処理装置およびプログラムを提供することにある。
【解決手段】入力手段は、ユーザによって指定された検索対象文字列および置換文字列を入力する。類似度算出手段は、検索対象文字列および置換文字列を比較することによって、当該検索対象文字列および置換文字列の類似度を算出する。検索手段は、類似度が予め定められた値以上である場合、検索対象文字列および置換文字列において共通する文字列に基づいて、当該検索対象文字列に類似する文字列を文書格納手段に格納されている文書から検索する。置換手段は、文書格納手段に格納されている文書に含まれる検索手段によって検索された文字列を置換文字列に置換する。出力手段は、検索された文字列が置換文字列に置換された文書を出力する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、文書中の文字列の検索および置換を行う文書処理装置およびプログラムに関する。
【背景技術】
【0002】
一般的に、文書に対する処理を実行する文書処理装置においては、文書中の文字列を検索し、当該検索された文字列を他の文字列に置換することが行われている。
【0003】
このような文書中の文字列の検索および置換を行う際には、例えばユーザによって検索対象文字列および置換文字列が指定される。
【0004】
この場合、文書中おける検索対象文字列に対して置換文字列が出力される。換言すれば、ユーザによって指定された検索対象文字列が文書から検索され、当該検索された文字列(検索対象文字列)が当該ユーザによって指定された置換文字列に置換される。
【0005】
このように、ユーザによって検索対象文字列および置換文字列が指定されることによって、文書中の文字列に対して検索および置換を行うことができる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2000−90080号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
ところで、上記したようにユーザによって検索対象文字列および置換文字列が指定されて文書中の文字列の検索および置換が行なわれる場合において、ユーザの利便性をより向上させるために例えば第1および第2の手法が考えられる。
【0008】
第1の手法は、例えばユーザによって指定された検索対象文字列だけではなく、当該検索対象文字列と類似する文字列についても当該文書から検索し、当該検索された文字列(検索対象文字列と類似する文字列)を当該置換文字列に置換する手法である。
【0009】
この第1の手法によれば、ユーザは検索対象文字列を指定するだけで、文書中の検索対象文字列と類似する文字列についても検索および置換を行うことができる。
【0010】
しかしながら、第1の手法では、検索対象文字列と類似する文字列の全てが置換文字列に置換されるため、ユーザにとって意図しない置換が行われる場合がある。具体的には、例えば検索対象文字列と置換文字列とが全く内容の異なるような文字列であってユーザが当該検索対象文字列のみを置換文字列に置換したいような場合に、当該検索対象文字列と類似する文字列を全て置換文字列に置換することは、当該ユーザの意図に反する。
【0011】
一方、第2の手法は、例えばユーザによって指定された検索対象文字列を言い換え前の文字列、置換文字列を言い換え後の文字列とした場合における当該検索対象文字列から置換対象文字列への言い換えを、文書から検索された検索対象文字列と類似する文字列に適用する手法である。
【0012】
この第2の手法によれば、検索対象文字列と類似する文字列を単に置換文字列に置換するのではなく、当該検索対象文字列と類似する文字列は、当該検索対象文字列と類似する文字列に対して検索対象文字列から置換文字列への言い換えを適用することによって得られる文字列に置換される。
【0013】
ここで、ユーザによって例えば検索対象文字列「車両ナンバー」および置換文字列「車両番号」が指定され、当該検索対象文字列「車両ナンバー」と類似する文字列として「車体ナンバー」が文書中から検索された場合を想定する。
【0014】
この場合、検索対象文字列「車両ナンバー」から置換文字列「車両番号」への言い換えが文書中から検索された「車体ナンバー」に適用されると、「車体番号」の文字列が得られる。これにより、文書中から検索された「車体ナンバー」の文字列(検索対象文字列と類似する文字列)は、「車体番号」の文字列に置換される。
【0015】
上記した第2の手法によれば、文書から検索された検索対象文字列と類似する文字列(の内容)に応じた置換を行うことができる。
【0016】
しかしながら、第2の手法では、文書中における「車体ナンバー」の文字列(つまり、検索対象文字列と類似する文字列)を「車両番号」の文字列(つまり、置換文字列)に置換することはできない。
【0017】
つまり、ユーザが検索対象文字列と類似する文字列についても置換文字列である「車両番号」に置換することを意図しているような場合には、第2の手法では、当該ユーザの意図に反した置換が行われることになり、当該ユーザが意図する置換を行うことができない場合がある。
【0018】
なお、例えばテキストエディタを用いて文字列の検索および置換を行うことも可能であるが、柔軟な検索および置換を行うためには例えばユーザが検索対象となる文字列を正規表現を用いて表す必要があり、手間が掛かる。
【0019】
そこで、本発明が解決しようとする課題は、ユーザが意図する検索および置換を行うことが可能な文書処理装置およびプログラムを提供することにある。
【課題を解決するための手段】
【0020】
実施形態に係る文書処理装置は、文書格納手段と、入力手段と、類似度算出手段と、判定手段と、検索手段と、置換手段と、出力手段とを具備する。
【0021】
文書格納手段は、文字列を含む文書を格納する。
【0022】
入力手段は、ユーザによって指定された検索対象文字列および置換文字列を入力する。
【0023】
類似度算出手段は、前記入力された検索対象文字列および置換文字列を比較することによって、当該検索対象文字列および置換文字列の類似度を算出する。
【0024】
判定手段は、前記算出された類似度が予め定められた値以上であるかを判定する。
【0025】
検索手段は、前記類似度が予め定められた値以上であると判定された場合、前記入力された検索対象文字列および置換文字列において共通する文字列に基づいて、当該検索対象文字列に類似する文字列を前記文書格納手段に格納されている文書から検索する。
【0026】
置換手段は、前記文書格納手段に格納されている文書に含まれる前記検索された文字列を前記入力された置換文字列に置換する。
【0027】
出力手段は、前記検索された文字列が前記入力された置換文字列に置換された文書を出力する。
【図面の簡単な説明】
【0028】
【図1】第1の実施形態に係る文書処理装置のハードウェア構成を示すブロック図。
【図2】図1に示す文書処理装置30の主として機能構成を示すブロック図。
【図3】本実施形態に係る文書処理装置30の処理手順を示すフローチャート。
【図4】第2の実施形態に係る文書処理装置の主として機能構成を示すブロック図。
【図5】本実施形態に係る文書処理装置40の処理手順を示すフローチャート。
【図6】第3の実施形態に係る文書処理装置の主として機能構成を示すブロック図。
【図7】本実施形態に係る文書処理装置50の処理手順を示すフローチャート。
【図8】第4の実施形態に係る文書処理装置の主として機能構成を示すブロック図。
【図9】本実施形態に係る文書処理装置60の処理手順を示すフローチャート。
【発明を実施するための形態】
【0029】
以下、図面を参照して、各実施形態について説明する。
【0030】
(第1の実施形態)
まず、図1および図2を参照して、第1の実施形態について説明する。図1は、本実施形態に係る文書処理装置のハードウェア構成を示すブロック図である。図1に示すように、コンピュータ10は、例えばハードディスクドライブ(HDD:Hard Disk Drive)のような外部記憶装置20と接続されている。この外部記憶装置20は、コンピュータ10によって実行されるプログラム21を格納する。コンピュータ10および外部記憶装置20は、文書処理装置30を構成する。
【0031】
この文書処理装置30は、ユーザによって指定された文字列に基づいて、文書中の文字列の検索および置換処理を行う機能を有する。
【0032】
図2は、図1に示す文書処理装置30の主として機能構成を示すブロック図である。図2に示すように、文書処理装置30は、入力部31、言語解析部32、類似性判定部33、検索部34、置換部35および出力部36を含む。本実施形態において、これらの各部は、図1に示すコンピュータ10が外部記憶装置20に格納されているプログラム21を実行することにより実現されるものとする。このプログラム21は、コンピュータ読み取り可能な記憶媒体に予め格納して頒布可能である。また、このプログラム21が例えばネットワークを介してコンピュータ10にダウンロードされても構わない。
【0033】
また、文書処理装置30は、対象文書格納部22および意味クラス辞書格納部23を含む。本実施形態において、対象文書格納部22および意味クラス辞書格納部23は、例えば外部記憶装置20に格納される。
【0034】
入力部31は、ユーザの操作に応じて、当該ユーザからの指示を受け付ける機能を有する。入力部31は、ユーザの操作に応じて、文書処理装置30における文書中の文字列の検索および置換処理の対象となる文書(以下、編集対象文書と表記)を入力する。この編集対象文書には、文字列が含まれる。なお、入力部31によって入力された編集対象文書は、対象文書格納部22に格納される。
【0035】
また、入力部31は、ユーザによって指定された換言対を入力する。換言対は、検索対象文字列(言い換え前文字列)および置換文字列(言い換え後文字列)を含む。検索対象文字列は、編集対象文書から文字列を検索するために用いられる。置換文字列は、編集対象文書中において、検索対象文字列を用いて検索された文字列を置換するために用いられる。
【0036】
言語解析部32は、入力部31によって入力された換言対に含まれる検索対象文字列および置換文字列を解析する機能を有する。言語解析部32は、検索対象文字列および置換文字列に対して例えば形態素解析(および構文解析)等を行う。
【0037】
類似性判定部33は、言語解析部32による解析結果に基づいて入力部31によって入力された換言対に含まれる検索対象文字列および置換文字列を比較することによって、当該検索対象文字列および置換文字列が類似しているか否かを判定する。類似性判定部33は、例えば検索対象文字列および置換文字列において共通する文字列(共通文字列)に基づいて判定処理を実行する。
【0038】
なお、以下の説明では、検索対象文字列および置換文字列において共通する文字列を共通文字列と称する。
【0039】
意味クラス辞書格納部23には、文字列および当該文字列の意味を表す意味クラスが対応づけて格納される。意味クラス辞書格納部23には、例えば文字列「社員」に対応づけて意味クラス「役職」が対応づけて格納されている。
【0040】
検索部34は、言語解析部32による解析結果に基づいて、入力部31によって入力された換言対に含まれる検索対象文字列と類似する文字列を、対象文書格納部22に格納されている編集対象文書から検索する。
【0041】
この場合、検索部34は、意味クラス辞書格納部23を参照して、検索対象文字列および置換文字列において共通する文字列(共通文字列)の意味を表す意味クラスを特定する。検索部34は、共通文字列に対応づけて意味クラス辞書格納部23に格納されている意味クラスを特定する。
【0042】
検索部34は、特定された意味クラスに対応づけて意味クラス辞書格納部23に格納されている文字列と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列を、検索対象文字列と類似する文字列として対象文書格納部22に格納されている編集対象文書から検索する。
【0043】
また、検索部34は、入力部31によって入力された換言対に含まれる検索対象文字列を、対象文書格納部22に格納されている編集対象文書から検索する。
【0044】
置換部35は、対象文書格納部22に格納されている編集対象文書に含まれる検索部34によって検索された文字列を、入力部31によって入力された換言対に含まれる置換文字列に置換する。
【0045】
出力部36は、置換部35によって文字列が置換された編集対象文書を出力(表示)する。
【0046】
次に、図3のフローチャートを参照して、本実施形態に係る文書処理装置30の処理手順について説明する。ここでは、対象文書格納部22には、編集対象文書が格納されているものとする。
【0047】
まず、入力部31は、ユーザの操作に応じて、当該ユーザによって指定された換言対を入力する(ステップS1)。入力部31によって入力された換言対には、検索対象文字列(言い換え前文字列)および置換文字列(言い換え後文字列)が含まれる。
【0048】
ユーザが例えば編集対象文書中の「社員ナンバー」の文字列を「社員番号」に置換したい場合には、当該ユーザは、検索対象文字列「社員ナンバー」および置換文字列「社員番号」を含む換言対を指定することができる。
【0049】
次に、言語解析部32は、入力部31によって入力された換言対(に含まれる検索対象文字列および置換文字列)を解析(例えば、形態素解析)する(ステップS2)。
【0050】
類似性判定部33は、言語解析部32による解析結果に基づいて、入力部31によって入力された換言対に含まれる検索対象文字列および置換文字列の類似性、つまり、当該検索対象文字列および置換文字列が類似であるか否かを判定する。
【0051】
この場合、類似性判定部33は、入力部31によって入力された換言対に含まれる検索対象文字列および置換文字列(の解析結果)を比較することによって、当該検索対象文字列および置換文字列の類似度を算出する(ステップS3)。
【0052】
この検索対象文字列および置換文字列の類似度は、当該検索対象文字列および置換文字列の2つの文字列を構成する文字に共通する文字列(共通文字列)があるか否かを基本的な観点として算出される。
【0053】
具体的には、検索対象文字列および置換文字列の類似度は、当該検索対象文字列および置換文字列の文字数に対する当該検索対象文字列および置換文字列において共通する文字数の割合によって算出される。つまり、検索対象文字列および置換文字列において共通する文字数が多いほど類似度は高くなる。
【0054】
ここで、上記したように検索対象文字列が「社員ナンバー」であり、置換文字列が「社員番号」である場合について具体的に説明する。この検索対象文字列「社員ナンバー」および置換文字列「社員番号」の文字数の合計(全文字数)は、6+4=10である。一方、検索対象文字列「社員ナンバー」および置換文字列「社員番号」においては、「社員」の文字列が共通する。この場合、検索対象文字列「社員ナンバー」および置換文字列「社員番号」において共通する文字数の合計は、2+2=4である。これにより、検索対象文字列「社員ナンバー」および置換文字列「社員番号」の類似度は、4/10=0.4と算出される。
【0055】
また、例えば検索対象文字列が「交通乗用具」であり、置換文字列が「交通機関」である場合には、当該検索対象文字列「交通乗用具」および置換文字列「交通機関」の文字数の合計は9であり、共通する文字列「交通」の文字数の合計は4である。これにより、検索対象文字列「交通乗用具」および置換文字列「交通機関」の類似度は、4/9=0.44と算出される。
【0056】
なお、検索対象文字列および置換文字列の類似度は、当該検索対象文字列および置換文字列における共通文字列の位置関係の同一性を参酌して算出されてもよい。具体的には、検索対象文字列および置換文字列の類似度は、検索対象文字列および置換文字列における共通文字列の位置の同一性に応じて重み付けを行っても構わない。つまり、検索対象文字列および置換文字列における共通文字列の位置関係が同一の場合には、当該検索対象文字列および置換文字列の類似度を一定の割合で増加させてもよい。
【0057】
上記したように検索対象文字列が「交通乗用具」であり、置換文字列が「交通機関」である場合には、検索対象文字列「交通乗用具」および置換文字列「交通機関」において共通文字列「交通」はともに前半に出現する。このように、検索対象文字列および置換文字列における共通文字列の位置関係が同一である場合には、検索対象文字列および置換文字列の類似度は、高くなるような重み付けが行われてもよい。
【0058】
一方、例えば検索対象文字列が「社員番号」であり、置換文字列が「新入社員」であるような場合、検索対象文字列「社員番号」および置換文字列「新入社員」における共通文字列は「社員」であるが、検索対象文字列「社員番号」において共通文字列「社員」は前半に出現し、置換文字列「新入社員」において共通文字列「社員」は後半に出現する。このように、検索対象文字列および置換文字列における共通文字列の位置関係が異なる場合には、検索対象文字列および置換文字列の類似度が低くなるような重み付けが行われてもよい。
【0059】
なお、検索対象文字列および置換文字列の類似度の算出方法は、当該検索対象文字列および置換文字列における共通する文字列(共通文字列)が多いほど類似性が高くなり、共通文字列の位置関係が同一であれば類似度が高くなるものであればよい。
【0060】
次に、類似性判定部33は、算出された類似度が予め定められた値(以下、閾値と表記)以上であるか否かを判定する(ステップS4)。
【0061】
類似度が閾値以上であると判定された場合(ステップS4のYES)、検索部34は、意味クラス辞書格納部23を参照して、検索対象文字列および置換文字列に対して意味クラス解析を実行する。これにより、検索部34は、入力部31によって入力された換言対に含まれる検索対象文字列および置換文字列における共通文字列の(意味を表す)意味クラスを特定する(ステップS5)。この場合、検索部34は、検索対象文字列および置換文字列における共通文字列に対応づけて意味クラス辞書格納部23に格納されている意味クラスを特定する。
【0062】
上記したように検索対象文字列が「社員ナンバー」であり、置換文字列が「社員番号」であり、共通文字列が「社員」である場合には、例えば意味クラス「役職」が特定される。
【0063】
次に、検索部34は、特定された意味クラスと同一の意味クラスを持つ文字列を、対象文書格納部22に格納されている編集対象文書から検索する(ステップS6)。
【0064】
この場合、検索部34は、特定された意味クラスに対応づけて意味クラス辞書格納部23に格納されている文字列と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列を検索する。
【0065】
ここで、上記したように検索対象文字列が「社員ナンバー」であり、置換文字列が「社員番号」であり、検索部34によって特定された意味クラスが「役職」である場合を想定する。この場合、検索部34は、意味クラス「役職」に対応づけて意味クラス辞書格納部23に格納されている文字列を、編集対象文書から検索する。ここでは、例えば「従業員」の文字列が検索されたものとする。
【0066】
更に、検索対象文字列は「社員ナンバー」であるため、当該検索対象文字列「社員ナンバー」における共通文字列「社員」以外の文字列は「ナンバー」である。したがって、検索部34は、検索された「従業員」の文字列と検索対象文字列において共通文字列以外の文字列である「ナンバー」の文字列とが組み合わされた文字列「従業員ナンバー」を、編集対象文書から検索する。
【0067】
なお、上記したように共通文字列「社員」の文字列の意味を表す意味クラスは「役職」であるため、編集対象文書中に「社員ナンバー」の文字列が出現する場合には、当該「社員ナンバー」(つまり、検索対象文字列自体)についても検索されることになる。
【0068】
検索部34によってこのような検索が行われることにより、入力部31によって入力された換言対に含まれる検索対象文字列と類似する文字列が編集対象文書から検索される。
【0069】
次に、置換部35は、編集対象文書において、検索部34によって検索された文字列を、入力部31によって入力された換言対に含まれる置換文字列に置換する(ステップS7)。
【0070】
具体的には、検索部34によって検索された文字列が「従業員ナンバー」であり、置換文字列が「社員番号」である場合には、編集対象文書において当該「従業員ナンバー」の文字列が置換文字列である「社員番号」に置換される。
【0071】
出力部36は、置換部35によって文字列が置換された編集対象文書を出力(表示)する(ステップS8)。具体的には、置換部35によって文字列が置換された編集対象文書は、例えばディスプレイ等に表示される。これにより、ユーザによって指定された換言対を用いて検索および置換処理された後の編集対象文書の内容を当該ユーザは確認することができる。
【0072】
一方、類似度が閾値以上でないと判定された場合(ステップS4のNO)、検索部34は、入力部31によって入力された換言対に含まれる検索対象文字列を、対象文書格納部22に格納されている編集対象文書から検索する(ステップS9)。なお、ステップS9の処理が実行されると、上記したステップS7の処理が実行される。
【0073】
上記したように本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列および置換文字列の類似度が算出され、当該類似度が閾値以上である場合には、当該検索対象文字列および置換文字列における共通文字列の意味を表す意味クラスが特定される。また、本実施形態においては、特定された意味クラスを持つ文字列と検索対象文字列および置換文字列における共通文字列以外の文字列とが組み合わされた文字列が当該検索対象文字列と類似する文字列として編集対象文書から検索され、当該検索された文字列が置換文字列と置換される。
【0074】
したがって、本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列と類似する文字列を当該換言対に含まれる置換文字列に置換することができる。これにより、本実施形態においては、ユーザによって指定された換言対から当該ユーザの意図を推測し、当該ユーザが意図する検索および置換処理を行うことができるため、文書に対する編集(検索および置換)の際の見落としが減り、当該文書に対する編集の効率を向上させることができる。
【0075】
(第2の実施形態)
次に、図4を参照して、第2の実施形態について説明する。図4は、本実施形態に係る文書処理装置の主として機能構成を示すブロック図である。なお、前述した図2と同様の部分には同一参照符号を付してその詳しい説明を省略する。ここでは、図2と異なる部分について主に述べる。
【0076】
また、本実施形態に係る文書処理装置のハードウェア構成は、前述した第1の実施形態と同様であるため、適宜、図1を用いて説明する。
【0077】
本実施形態においては、編集距離による文字列の類似度を用いて編集対象文書から文字列を検索する点が、前述した第1の実施形態とは異なる。
【0078】
図4に示すように、本実施形態に係る文書処理装置40は、検索部41を含む。本実施形態において、検索部41は、図1に示すコンピュータ10が外部記憶装置20に格納されているプログラム21を実行することにより実現されるものとする。
【0079】
検索部41は、言語解析部32による解析結果に基づいて、入力部31によって入力された換言対に含まれる検索対象文字列および置換文字列において文字列の類似度を算出する。
【0080】
また、検索部41は、検索対象文字列と編集距離が近い文字列を、当該検索対象文字列と類似する文字列として対象文書格納部22に格納されている編集対象文書から検索する。なお、編集距離は、2つの文字列が異なる程度を表す。
【0081】
次に、図5のフローチャートを参照して、本実施形態に係る文書処理装置40の処理手順について説明する。ここでは、対象文書格納部22には、編集対象文書が格納されているものとする。
【0082】
まず、前述した図3に示すステップS1〜S4の処理に相当するステップS11〜S14の処理が実行される。
【0083】
ステップS14において類似度が閾値以上であると判定された場合、検索部41は、ステップS11において入力部31によって入力された換言対に含まれる検索対象文字列との編集距離が近い文字列、具体的には、当該検索対象文字列との編集距離が予め定められた値(閾値)以下である文字列を、当該検索対象文字列と類似する文字列として対象文書格納部22に格納されている編集対象文書から検索する(ステップS15)。
【0084】
なお、編集距離とは、2つの文字列が異なる程度を示す数値である。具体的には、編集距離は、例えば文字の挿入、削除または置換によって2つの文字列の一方を他方に変換する際に必要な手順の最小回数を示す。
【0085】
ステップS15の処理において文字列が編集対象文書から検索されると、前述した図3に示すステップS7およびS8の処理に相当するステップS16およびS17の処理が実行される。
【0086】
また、ステップS14において類似度が閾値以上でないと判定された場合、前述した図3に示すステップS9の処理に相当するステップS18の処理が実行される。
【0087】
上記したように本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列および置換文字列の類似度が算出され、当該類似度が閾値以上である場合には、当該検索対象文字列との編集距離が近い(閾値以下である)文字列が当該検索対象文字列と類似する文字列として編集対象文書から検索され、当該検索された文字列が置換文字列と置換される。
【0088】
したがって、本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列と類似する文字列を当該換言対に含まれる置換文字列に置換することができる。これにより、本実施形態においては、前述した第1の実施形態と同様に、ユーザによって指定された換言対から当該ユーザの意図を推測し、当該ユーザが意図する検索および置換処理を行うことが可能となる。
【0089】
(第3の実施形態)
次に、図6を参照して、第3の実施形態について説明する。図6は、本実施形態に係る文書処理装置の主として機能構成を示すブロック図である。なお、前述した図2と同様の部分には同一参照符号を付してその詳しい説明を省略する。ここでは、図2と異なる部分について主に述べる。
【0090】
また、本実施形態に係る文書処理装置のハードウェア構成は、前述した第1の実施形態と同様であるため、適宜、図1を用いて説明する。
【0091】
本実施形態においては、検索対象文字列および置換文字列において共通する文字列(共通文字列)のシソーラス上の位置を用いて編集対象文書から文字列を検索する点が、前述し第1および第2の実施形態とは異なる。
【0092】
図6に示すように、本実施形態に係る文書処理装置50は、検索部51を含む。本実施形態において、検索部51は、図1に示すコンピュータ10が外部記憶装置20に格納されているプログラム21を実行することにより実現されるものとする。
【0093】
また、文書処理装置50は、シソーラス格納部24を含む。本実施形態において、シソーラス格納部24は、例えば外部記憶装置20に格納される。
【0094】
シソーラス格納部24には、関連関係にある複数の文字列を階層構造で表すシソーラスが予め格納されている。なお、シソーラス格納部24に格納されているシソーラス上においては、互いに意味的に近い単語を表す文字列が近い位置に配置される。
【0095】
検索部51は、シソーラス格納部24に格納されているシソーラスを参照して、入力部31によって入力された換言対に含まれる検索対象文字列および置換文字列における共通文字列の当該シソーラス上の位置を特定する。
【0096】
検索部51は、シソーラス格納部24に格納されているシソーラス上において、特定された共通文字列の位置から予め定められた範囲内に位置する文字列(つまり、当該共通文字列と位置が近い文字列)と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列を、当該検索対象文字列と類似する文字列として対象文書格納部22に格納されている編集対象文書から検索する。
【0097】
次に、図7のフローチャートを参照して、本実施形態に係る文書処理装置50の処理手順について説明する。ここでは、対象文書格納部22には、編集対象文書が格納されているものとする。
【0098】
まず、前述した図3に示すステップS1〜S4の処理に相当するステップS21〜S24の処理が実行される。
【0099】
ステップS24において類似度が閾値以上であると判定された場合、検索部51は、シソーラス格納部24に格納されているシソーラスを参照して、ステップS21において入力部31によって入力された換言対に含まれる検索対象文字列および置換文字列における共通文字列の当該シソーラス上の位置を特定する(ステップS25)。以下、ステップS25において特定された共通文字列のシソーラス上の位置を単に共通文字列の位置と称する。
【0100】
次に、検索部51は、シソーラス格納部24に格納されているシソーラス上において、共通文字列と位置が近い文字列(当該共通文字列と当該シソーラスの階層構造における位置関係が近い文字列)と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列を、対象文書格納部22に格納されている編集対象文書から検索する(ステップS26)。
【0101】
ここで、シソーラス上において共通文字列と位置が近い文字列とは、例えばシソーラス格納部24に格納されているシソーラスにおける階層構造において当該共通文字列の位置から予め定められた範囲内に位置する文字列である。また、予め定められた範囲は、例えばシソーラス格納部24に格納されているシソーラスの階層構造(例えば、木構造)における例えば1階層を距離の単位とした場合に、検索対象文字列の位置から予め定められた距離以下の範囲である。
【0102】
ステップS26において文字列が編集対象文書から検索されると、前述した図3に示すステップS7およびS8の処理に相当するステップS27およびS28の処理が実行される。
【0103】
また、ステップS24において類似度が閾値以上でないと判定された場合、前述した図3に示すステップS9の処理に相当するステップS29の処理が実行される。
【0104】
上記したように本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列および置換文字列の類似度が算出され、当該類似度が閾値以上である場合には、当該検索対象文字列および置換文字列における共通文字列とシソーラス上の位置が近い文字列(つまり、検索対象文字列のシソーラス上の位置と近い位置の文字列)と当該検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列が当該検索対象文字列と類似する文字列として編集対象文書から検索され、当該検索された文字列が置換文字列と置換される。
【0105】
したがって、本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列と類似する文字列を当該換言対に含まれる置換文字列に置換することができる。これにより、本実施形態においては、前述した第1および第2の実施形態と同様に、ユーザによって指定された換言対から当該ユーザの意図を推測し、当該ユーザが意図する検索および置換処理を行うことが可能となる。
【0106】
なお、本実施形態においては、共通文字列とシソーラス上の位置が近い文字列と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列が検索対象文字列と類似する文字列として編集対象文書から検索されるものとして説明したが、例えば検索対象文字列とシソーラス上の位置が近い文字列が当該検索対象文字列と類似する文字列として検索されても構わない。
【0107】
(第4の実施形態)
次に、図8を参照して、第4の実施形態について説明する。図8は、本実施形態に係る文書処理装置の主として機能構成を示すブロック図である。なお、前述した図2と同様の部分には同一参照符号を付してその詳しい説明を省略する。ここでは、図2と異なる部分について主に述べる。
【0108】
また、本実施形態に係る文書処理装置のハードウェア構成は、前述した第1の実施形態と同様であるため、適宜、図1を用いて説明する。
【0109】
本実施形態においては、検索対象文字列および置換文字列において共通する文字列(共通文字列)によって表される単語と共起関係にある単語(以下、共起単語と表記)を用いて編集対象文書から文字列を検索する点が、前述した第1〜第3の実施形態とは異なる。
【0110】
図8に示すように、本実施形態に係る文書処理装置60は、検索部61を含む。本実施形態において、検索部61は、図1に示すコンピュータ10が外部記憶装置20に格納されているプログラム21を実行することにより実現されるものとする。
【0111】
また、文書処理装置60は、共起単語格納部25を含む。本実施形態において、共起単語格納部25は、例えば外部記憶装置20に格納される。
【0112】
共起単語格納部25は、互いに共起関係にある単語が対応づけて予め格納されている。なお、共起単語格納部25に格納されている互いに共起関係にある単語の情報は、例えば多数の文書を解析等することによって予め用意されているものとする。
【0113】
検索部61は、共起単語格納部25を参照して、入力部31によって入力された換言対に含まれる検索対象文字列および置換文字列における共通文字列によって表される単語の共起単語(当該共通文字列によって表される単語と共起関係にある単語)を特定する。検索部61は、例えば共通文字列によって表される単語に対応づけて共起単語格納部25に格納されている単語を特定する。
【0114】
検索部61は、特定された共起単語に基づいて共通文字列によって表される単語と共起単語の共通性が高い単語を特定し、当該特定された共起単語の共通性が高い単語を表す文字列と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列を、検索対象文字列と類似する文字列として対象文書格納部22に格納されている編集対象文書から検索する。
【0115】
次に、図9のフローチャートを参照して、本実施形態に係る文書処理装置60の処理手順について説明する。ここでは、対象文書格納部22には、編集対象文書が格納されているものとする。
【0116】
まず、前述した図3に示すステップS1〜S4の処理に相当するステップS31〜S34の処理が実行される。
【0117】
ステップS34において類似度が閾値以上であると判定された場合、検索部61は、共起単語格納部25を参照して、ステップS21において入力部31によって入力された換言対に含まれる検索対象文字列および置換文字列における共通文字列によって表される単語の共起単語(当該共通文字列によって表される単語と共起関係にある単語)を特定する(ステップS35)。この場合、検索部61は、共通文字列によって表される単語に対応づけて共起単語格納部25に格納されている単語を共起単語として特定する。
【0118】
次に、検索部61は、特定された共起単語に基づいて、共通文字列によって表される単語と共起単語の共通性が高い単語を特定する。共通文字列によって表される単語と共起単語の共通性が高い単語とは、当該共通文字列によって表される単語と共通の共起単語を持つ単語であり、ステップS35において特定された共起単語と共起関係にある単語である。つまり、検索部61は、ステップS35において特定された共起単語に対応づけて共起単語格納部25に格納されている単語を、共通文字列によって表される単語と共起単語の共通性が高い単語として特定する。
【0119】
検索部61は、特定された共起単語の共通性が高い単語を表す文字列と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列を、当該検索対象文字列と類似する文字列として対象文書格納部22に格納されている編集対象文書から検索する(ステップS36)。
【0120】
ステップS36において文字列が編集対象文書から検索されると、前述した図3に示すステップS7およびS8の処理に相当するステップS37およびS38の処理が実行される。
【0121】
また、ステップS34において類似度が閾値以上でないと判定された場合、前述した図3に示すステップS9の処理に相当するステップS39の処理が実行される。
【0122】
上記したように本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列および置換文字列の類似度が算出され、当該類似度が閾値以上である場合には、当該検索対象文字列および置換文字列における共通文字列によって表される単語と共起単語の共通性が高い単語(つまり、共通文字列によって表される単語と共起単語が共通する単語)を表す文字列と当該検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列が当該検索対象文字列と類似する文字列として編集対象文書から検索され、当該検索された文字列が置換文字列と置換される。
【0123】
したがって、本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列と類似する文字列を当該換言対に含まれる置換文字列に置換することができる。これにより、本実施形態においては、前述した第1〜第3の実施形態と同様に、ユーザによって指定された換言対から当該ユーザの意図を推測し、当該ユーザが意図する検索および置換処理を行うことが可能となる。
【0124】
なお、本実施形態においては、共通文字列によって表される単語と共起単語の共通性が高い単語を表す文字列と、当該検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列が当該検索対象文字列と類似する文字列として編集対象文書から検索されるものとして説明したが、例えば検索対象文字列によって表される単語と共起単語の共通性が高い単語を表す文字列が当該検索対象文字列と類似する文字列として検索されても構わない。
【0125】
以上説明した少なくとも1つの実施形態によれば、ユーザが意図する検索および置換を行うことが可能な文書処理装置およびプログラムを提供することができる。
【0126】
なお、上述した第1〜第4の実施形態のうちの2つ以上を適宜組み合わせることは可能である。例えば第1および第2の実施形態を組み合わせる場合には、前述した図3に示すステップS6の処理の後に前述した図5に示すステップS15の処理が実行されればよい。他の実施形態を組み合わせる場合についても同様である。
【0127】
また、本願発明は、上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記各実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、各実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
【符号の説明】
【0128】
10…コンピュータ、20…外部記憶装置、22…対象文書格納部、23…意味クラス辞書格納部、24…シソーラス格納部、25…共起単語格納部、30,40,50,60…文書処理装置、31…入力部、32…言語解析部、33…類似性判定部、34,41,51,61…検索部、35…置換部、36…出力部。

【特許請求の範囲】
【請求項1】
文字列を含む文書を格納する文書格納手段と、
ユーザによって指定された検索対象文字列および置換文字列を入力する入力手段と、
前記入力された検索対象文字列および置換文字列を比較することによって、当該検索対象文字列および置換文字列の類似度を算出する類似度算出手段と、
前記算出された類似度が予め定められた値以上であるかを判定する判定手段と、
前記類似度が予め定められた値以上であると判定された場合、前記入力された検索対象文字列および置換文字列において共通する文字列に基づいて、当該検索対象文字列に類似する文字列を前記文書格納手段に格納されている文書から検索する検索手段と、
前記文書格納手段に格納されている文書に含まれる前記検索された文字列を前記入力された置換文字列に置換する置換手段と、
前記検索された文字列が前記入力された置換文字列に置換された文書を出力する出力手段と
を具備することを特徴とする文書処理装置。
【請求項2】
前記類似度算出手段は、前記入力された検索対象文字列および置換文字列の文字数に対する当該検索対象文字列および置換文字列において共通する文字数の割合を、当該検索文字列および置換文字列の類似度として算出することを特徴とする請求項1記載の文書処理装置。
【請求項3】
文字列および当該文字列の意味を表す意味クラスを対応づけて格納する意味クラス辞書格納手段を更に具備し、
前記検索手段は、
前記共通する文字列に対応づけて前記意味クラス辞書格納手段に格納されている意味クラスを特定する特定手段を含み、
前記特定された意味クラスに対応づけて前記意味クラス辞書格納手段に格納されている文字列と前記入力された検索対象文字列における前記共通する文字列以外の文字列とが組み合わされた文字列を、前記文書格納手段に格納されている文書から検索する
ことを特徴とする請求項2記載の文書処理装置。
【請求項4】
前記検索手段は、前記検索対象文字列との編集距離が予め定められた値以下である文字列を、前記文書格納手段に格納されている文書から検索することを特徴とする請求項2記載の文書処理装置。
【請求項5】
関連関係にある複数の文字列を階層構造で表すシソーラスを予め格納するシソーラス格納手段を更に具備し、
前記検索手段は、
前記シソーラス格納手段に格納されているシソーラス上の前記共通する文字列の位置から予め定められた範囲内に位置する文字列を特定する特定手段を含み、
前記特定された文字列と前記入力された検索対象文字列における前記共通する文字列以外の文字列とが組み合わされた文字列を、前記文書格納手段に格納されている文書から検索する
ことを特徴とする請求項2記載の文書処理装置。
【請求項6】
互いに共起関係にある単語を対応づけて予め格納する共起単語格納手段を更に具備し、
前記検索手段は、
前記共起単語格納手段を参照して、前記共通する文字列によって表される単語と共起関係にある単語を特定する特定手段を含み、
前記共起単語格納手段を参照して、前記特定された単語と共起関係にある単語を表す文字列と前記入力された検索対象文字列における前記共通する文字列以外の文字列とが組み合わされた文字列を、前記文書格納手段に格納されている文書から検索する
ことを特徴とする請求項2記載の文書処理装置。
【請求項7】
文字列を含む文書を格納する文書格納手段を有する外部記憶装置と、当該外部記憶装置を利用するコンピュータとから構成される文書処理装置において、前記コンピュータによって実行されるプログラムであって、
前記コンピュータに、
ユーザによって指定された検索対象文字列および置換文字列を入力するステップと、
前記入力された検索対象文字列および置換文字列を比較することによって、当該検索対象文字列および置換文字列の類似度を算出するステップと、
前記算出された類似度が予め定められた値以上であるかを判定するステップと、
前記類似度が予め定められた値以上であると判定された場合、前記入力された検索対象文字列および置換文字列において共通する文字列に基づいて、当該検索対象文字列に類似する文字列を前記文書格納手段に格納されている文書から検索するステップと、
前記文書格納手段に格納されている文書に含まれる前記検索された文字列を前記入力された置換文字列に置換するステップと、
前記検索された文字列が前記入力された置換文字列に置換された文書を出力するステップと
を実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2012−53779(P2012−53779A)
【公開日】平成24年3月15日(2012.3.15)
【国際特許分類】
【出願番号】特願2010−197051(P2010−197051)
【出願日】平成22年9月2日(2010.9.2)
【出願人】(000003078)株式会社東芝 (54,554)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【Fターム(参考)】