(57)【特許請求の範囲】
【請求項１】
文字列を含む文書を格納する文書格納手段と、
ユーザによって指定された検索対象文字列および置換文字列を入力する入力手段と、
前記入力された検索対象文字列および置換文字列を比較することによって、当該検索対象文字列および置換文字列の類似度を算出する類似度算出手段と、
前記算出された類似度が予め定められた値以上であるかを判定する判定手段と、
前記類似度が予め定められた値以上であると判定された場合、前記入力された検索対象文字列および置換文字列において共通する文字列に基づいて、当該検索対象文字列に類似する文字列を前記文書格納手段に格納されている文書から検索する検索手段と、
前記文書格納手段に格納されている文書に含まれる前記検索された文字列を前記入力された置換文字列に置換する置換手段と、
前記検索された文字列が前記入力された置換文字列に置換された文書を出力する出力手段と、
文字列および当該文字列の意味を表す意味クラスを対応づけて格納する意味クラス辞書格納手段を具備し、
前記検索手段は、
前記共通する文字列に対応づけて前記意味クラス辞書格納手段に格納されている意味クラスを特定する特定手段を含み、
前記特定された意味クラスに対応づけて前記意味クラス辞書格納手段に格納されている文字列と前記入力された検索対象文字列における前記共通する文字列以外の文字列とが組み合わされた文字列を、前記文書格納手段に格納されている文書から検索する
ことを特徴とする文書処理装置。
【請求項２】
文字列を含む文書を格納する文書格納手段と、
ユーザによって指定された検索対象文字列および置換文字列を入力する入力手段と、
前記入力された検索対象文字列および置換文字列を比較することによって、当該検索対象文字列および置換文字列の類似度を算出する類似度算出手段と、
前記算出された類似度が予め定められた値以上であるかを判定する判定手段と、
前記類似度が予め定められた値以上であると判定された場合、前記検索対象文字列との編集距離が予め定められた値以下である文字列を、前記文書格納手段に格納されている文書から検索する検索手段と、
前記文書格納手段に格納されている文書に含まれる前記検索された文字列を前記入力された置換文字列に置換する置換手段と、
前記検索された文字列が前記入力された置換文字列に置換された文書を出力する出力手段と、
を具備することを特徴とする文書処理装置。
【請求項３】
文字列を含む文書を格納する文書格納手段と、
ユーザによって指定された検索対象文字列および置換文字列を入力する入力手段と、
前記入力された検索対象文字列および置換文字列を比較することによって、当該検索対象文字列および置換文字列の類似度を算出する類似度算出手段と、
前記算出された類似度が予め定められた値以上であるかを判定する判定手段と、
前記類似度が予め定められた値以上であると判定された場合、前記入力された検索対象文字列および置換文字列において共通する文字列に基づいて、当該検索対象文字列に類似する文字列を前記文書格納手段に格納されている文書から検索する検索手段と、
前記文書格納手段に格納されている文書に含まれる前記検索された文字列を前記入力された置換文字列に置換する置換手段と、
前記検索された文字列が前記入力された置換文字列に置換された文書を出力する出力手段と、
関連関係にある複数の文字列を階層構造で表すシソーラスを予め格納するシソーラス格納手段を具備し、
前記検索手段は、
前記シソーラス格納手段に格納されているシソーラス上の前記共通する文字列の位置から予め定められた範囲内に位置する文字列を特定する特定手段を含み、
前記特定された文字列と前記入力された検索対象文字列における前記共通する文字列以外の文字列とが組み合わされた文字列を、前記文書格納手段に格納されている文書から検索することを特徴とする文書処理装置。
【請求項４】
文字列を含む文書を格納する文書格納手段と、
ユーザによって指定された検索対象文字列および置換文字列を入力する入力手段と、
前記入力された検索対象文字列および置換文字列を比較することによって、当該検索対象文字列および置換文字列の類似度を算出する類似度算出手段と、
前記算出された類似度が予め定められた値以上であるかを判定する判定手段と、
前記類似度が予め定められた値以上であると判定された場合、前記入力された検索対象文字列および置換文字列において共通する文字列に基づいて、当該検索対象文字列に類似する文字列を前記文書格納手段に格納されている文書から検索する検索手段と、
前記文書格納手段に格納されている文書に含まれる前記検索された文字列を前記入力された置換文字列に置換する置換手段と、
前記検索された文字列が前記入力された置換文字列に置換された文書を出力する出力手段と、
互いに共起関係にある単語を対応づけて予め格納する共起単語格納手段を具備し、
前記検索手段は、
前記共起単語格納手段を参照して、前記共通する文字列によって表される単語と共起関係にある単語を特定する特定手段を含み、
前記共起単語格納手段を参照して、前記特定された単語と共起関係にある単語を表す文字列と前記入力された検索対象文字列における前記共通する文字列以外の文字列とが組み合わされた文字列を、前記文書格納手段に格納されている文書から検索する
ことを特徴とする文書処理装置。
【請求項５】
前記類似度算出手段は、前記入力された検索対象文字列および置換文字列の文字数に対する当該検索対象文字列および置換文字列において共通する文字数の割合を、当該検索文字列および置換文字列の類似度として算出することを特徴とする請求項１乃至４の何れかに記載の文書処理装置。
【請求項６】
文字列を含む文書を格納する文書格納手段を有する外部記憶装置と、当該外部記憶装置を利用するコンピュータとから構成される文書処理装置において、前記コンピュータによって実行されるプログラムであって、
前記コンピュータに、
ユーザによって指定された検索対象文字列および置換文字列を入力するステップと、
前記入力された検索対象文字列および置換文字列を比較することによって、当該検索対象文字列および置換文字列の類似度を算出するステップと、
前記算出された類似度が予め定められた値以上であるかを判定するステップと、
前記類似度が予め定められた値以上であると判定された場合、前記入力された検索対象文字列および置換文字列において共通する文字列に基づいて、当該検索対象文字列に類似する文字列を前記文書格納手段に格納されている文書から検索するものであって、文字列および当該文字列の意味を表す意味クラスを対応づけて格納する意味クラス辞書格納手段から前記共通する文字列に対応する意味クラスを特定し、前記特定された意味クラスに対応づけて前記意味クラス辞書格納手段に格納されている文字列と前記入力された検索対象文字列における前記共通する文字列以外の文字列とが組み合わされた文字列を、前記文書格納手段に格納されている文書から検索するステップと、
前記文書格納手段に格納されている文書に含まれる前記検索された文字列を前記入力された置換文字列に置換するステップと、
前記検索された文字列が前記入力された置換文字列に置換された文書を出力するステップと
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、文書中の文字列の検索および置換を行う文書処理装置およびプログラムに関する。
【背景技術】
【０００２】
一般的に、文書に対する処理を実行する文書処理装置においては、文書中の文字列を検索し、当該検索された文字列を他の文字列に置換することが行われている。
【０００３】
このような文書中の文字列の検索および置換を行う際には、例えばユーザによって検索対象文字列および置換文字列が指定される。
【０００４】
この場合、文書中おける検索対象文字列に対して置換文字列が出力される。換言すれば、ユーザによって指定された検索対象文字列が文書から検索され、当該検索された文字列（検索対象文字列）が当該ユーザによって指定された置換文字列に置換される。
【０００５】
このように、ユーザによって検索対象文字列および置換文字列が指定されることによって、文書中の文字列に対して検索および置換を行うことができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−９００８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、上記したようにユーザによって検索対象文字列および置換文字列が指定されて文書中の文字列の検索および置換が行なわれる場合において、ユーザの利便性をより向上させるために例えば第１および第２の手法が考えられる。
【０００８】
第１の手法は、例えばユーザによって指定された検索対象文字列だけではなく、当該検索対象文字列と類似する文字列についても当該文書から検索し、当該検索された文字列（検索対象文字列と類似する文字列）を当該置換文字列に置換する手法である。
【０００９】
この第１の手法によれば、ユーザは検索対象文字列を指定するだけで、文書中の検索対象文字列と類似する文字列についても検索および置換を行うことができる。
【００１０】
しかしながら、第１の手法では、検索対象文字列と類似する文字列の全てが置換文字列に置換されるため、ユーザにとって意図しない置換が行われる場合がある。具体的には、例えば検索対象文字列と置換文字列とが全く内容の異なるような文字列であってユーザが当該検索対象文字列のみを置換文字列に置換したいような場合に、当該検索対象文字列と類似する文字列を全て置換文字列に置換することは、当該ユーザの意図に反する。
【００１１】
一方、第２の手法は、例えばユーザによって指定された検索対象文字列を言い換え前の文字列、置換文字列を言い換え後の文字列とした場合における当該検索対象文字列から置換対象文字列への言い換えを、文書から検索された検索対象文字列と類似する文字列に適用する手法である。
【００１２】
この第２の手法によれば、検索対象文字列と類似する文字列を単に置換文字列に置換するのではなく、当該検索対象文字列と類似する文字列は、当該検索対象文字列と類似する文字列に対して検索対象文字列から置換文字列への言い換えを適用することによって得られる文字列に置換される。
【００１３】
ここで、ユーザによって例えば検索対象文字列「車両ナンバー」および置換文字列「車両番号」が指定され、当該検索対象文字列「車両ナンバー」と類似する文字列として「車体ナンバー」が文書中から検索された場合を想定する。
【００１４】
この場合、検索対象文字列「車両ナンバー」から置換文字列「車両番号」への言い換えが文書中から検索された「車体ナンバー」に適用されると、「車体番号」の文字列が得られる。これにより、文書中から検索された「車体ナンバー」の文字列（検索対象文字列と類似する文字列）は、「車体番号」の文字列に置換される。
【００１５】
上記した第２の手法によれば、文書から検索された検索対象文字列と類似する文字列（の内容）に応じた置換を行うことができる。
【００１６】
しかしながら、第２の手法では、文書中における「車体ナンバー」の文字列（つまり、検索対象文字列と類似する文字列）を「車両番号」の文字列（つまり、置換文字列）に置換することはできない。
【００１７】
つまり、ユーザが検索対象文字列と類似する文字列についても置換文字列である「車両番号」に置換することを意図しているような場合には、第２の手法では、当該ユーザの意図に反した置換が行われることになり、当該ユーザが意図する置換を行うことができない場合がある。
【００１８】
なお、例えばテキストエディタを用いて文字列の検索および置換を行うことも可能であるが、柔軟な検索および置換を行うためには例えばユーザが検索対象となる文字列を正規表現を用いて表す必要があり、手間が掛かる。
【００１９】
そこで、本発明が解決しようとする課題は、ユーザが意図する検索および置換を行うことが可能な文書処理装置およびプログラムを提供することにある。
【課題を解決するための手段】
【００２０】
実施形態に係る文書処理装置は、文書格納手段と、入力手段と、類似度算出手段と、判定手段と、検索手段と、置換手段と、出力手段とを具備する。
【００２１】
文書格納手段は、文字列を含む文書を格納する。
【００２２】
入力手段は、ユーザによって指定された検索対象文字列および置換文字列を入力する。
【００２３】
類似度算出手段は、前記入力された検索対象文字列および置換文字列を比較することによって、当該検索対象文字列および置換文字列の類似度を算出する。
【００２４】
判定手段は、前記算出された類似度が予め定められた値以上であるかを判定する。
【００２５】
検索手段は、前記類似度が予め定められた値以上であると判定された場合、前記入力された検索対象文字列および置換文字列において共通する文字列に基づいて、当該検索対象文字列に類似する文字列を前記文書格納手段に格納されている文書から検索する。
【００２６】
置換手段は、前記文書格納手段に格納されている文書に含まれる前記検索された文字列を前記入力された置換文字列に置換する。
【００２７】
出力手段は、前記検索された文字列が前記入力された置換文字列に置換された文書を出力する。
【図面の簡単な説明】
【００２８】
【図１】第１の実施形態に係る文書処理装置のハードウェア構成を示すブロック図。
【図２】図１に示す文書処理装置３０の主として機能構成を示すブロック図。
【図３】本実施形態に係る文書処理装置３０の処理手順を示すフローチャート。
【図４】第２の実施形態に係る文書処理装置の主として機能構成を示すブロック図。
【図５】本実施形態に係る文書処理装置４０の処理手順を示すフローチャート。
【図６】第３の実施形態に係る文書処理装置の主として機能構成を示すブロック図。
【図７】本実施形態に係る文書処理装置５０の処理手順を示すフローチャート。
【図８】第４の実施形態に係る文書処理装置の主として機能構成を示すブロック図。
【図９】本実施形態に係る文書処理装置６０の処理手順を示すフローチャート。
【発明を実施するための形態】
【００２９】
以下、図面を参照して、各実施形態について説明する。
【００３０】
（第１の実施形態）
まず、図１および図２を参照して、第１の実施形態について説明する。図１は、本実施形態に係る文書処理装置のハードウェア構成を示すブロック図である。図１に示すように、コンピュータ１０は、例えばハードディスクドライブ（ＨＤＤ：Hard Disk Drive）のような外部記憶装置２０と接続されている。この外部記憶装置２０は、コンピュータ１０によって実行されるプログラム２１を格納する。コンピュータ１０および外部記憶装置２０は、文書処理装置３０を構成する。
【００３１】
この文書処理装置３０は、ユーザによって指定された文字列に基づいて、文書中の文字列の検索および置換処理を行う機能を有する。
【００３２】
図２は、図１に示す文書処理装置３０の主として機能構成を示すブロック図である。図２に示すように、文書処理装置３０は、入力部３１、言語解析部３２、類似性判定部３３、検索部３４、置換部３５および出力部３６を含む。本実施形態において、これらの各部は、図１に示すコンピュータ１０が外部記憶装置２０に格納されているプログラム２１を実行することにより実現されるものとする。このプログラム２１は、コンピュータ読み取り可能な記憶媒体に予め格納して頒布可能である。また、このプログラム２１が例えばネットワークを介してコンピュータ１０にダウンロードされても構わない。
【００３３】
また、文書処理装置３０は、対象文書格納部２２および意味クラス辞書格納部２３を含む。本実施形態において、対象文書格納部２２および意味クラス辞書格納部２３は、例えば外部記憶装置２０に格納される。
【００３４】
入力部３１は、ユーザの操作に応じて、当該ユーザからの指示を受け付ける機能を有する。入力部３１は、ユーザの操作に応じて、文書処理装置３０における文書中の文字列の検索および置換処理の対象となる文書（以下、編集対象文書と表記）を入力する。この編集対象文書には、文字列が含まれる。なお、入力部３１によって入力された編集対象文書は、対象文書格納部２２に格納される。
【００３５】
また、入力部３１は、ユーザによって指定された換言対を入力する。換言対は、検索対象文字列（言い換え前文字列）および置換文字列（言い換え後文字列）を含む。検索対象文字列は、編集対象文書から文字列を検索するために用いられる。置換文字列は、編集対象文書中において、検索対象文字列を用いて検索された文字列を置換するために用いられる。
【００３６】
言語解析部３２は、入力部３１によって入力された換言対に含まれる検索対象文字列および置換文字列を解析する機能を有する。言語解析部３２は、検索対象文字列および置換文字列に対して例えば形態素解析（および構文解析）等を行う。
【００３７】
類似性判定部３３は、言語解析部３２による解析結果に基づいて入力部３１によって入力された換言対に含まれる検索対象文字列および置換文字列を比較することによって、当該検索対象文字列および置換文字列が類似しているか否かを判定する。類似性判定部３３は、例えば検索対象文字列および置換文字列において共通する文字列（共通文字列）に基づいて判定処理を実行する。
【００３８】
なお、以下の説明では、検索対象文字列および置換文字列において共通する文字列を共通文字列と称する。
【００３９】
意味クラス辞書格納部２３には、文字列および当該文字列の意味を表す意味クラスが対応づけて格納される。意味クラス辞書格納部２３には、例えば文字列「社員」に対応づけて意味クラス「役職」が対応づけて格納されている。
【００４０】
検索部３４は、言語解析部３２による解析結果に基づいて、入力部３１によって入力された換言対に含まれる検索対象文字列と類似する文字列を、対象文書格納部２２に格納されている編集対象文書から検索する。
【００４１】
この場合、検索部３４は、意味クラス辞書格納部２３を参照して、検索対象文字列および置換文字列において共通する文字列（共通文字列）の意味を表す意味クラスを特定する。検索部３４は、共通文字列に対応づけて意味クラス辞書格納部２３に格納されている意味クラスを特定する。
【００４２】
検索部３４は、特定された意味クラスに対応づけて意味クラス辞書格納部２３に格納されている文字列と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列を、検索対象文字列と類似する文字列として対象文書格納部２２に格納されている編集対象文書から検索する。
【００４３】
また、検索部３４は、入力部３１によって入力された換言対に含まれる検索対象文字列を、対象文書格納部２２に格納されている編集対象文書から検索する。
【００４４】
置換部３５は、対象文書格納部２２に格納されている編集対象文書に含まれる検索部３４によって検索された文字列を、入力部３１によって入力された換言対に含まれる置換文字列に置換する。
【００４５】
出力部３６は、置換部３５によって文字列が置換された編集対象文書を出力（表示）する。
【００４６】
次に、図３のフローチャートを参照して、本実施形態に係る文書処理装置３０の処理手順について説明する。ここでは、対象文書格納部２２には、編集対象文書が格納されているものとする。
【００４７】
まず、入力部３１は、ユーザの操作に応じて、当該ユーザによって指定された換言対を入力する（ステップＳ１）。入力部３１によって入力された換言対には、検索対象文字列（言い換え前文字列）および置換文字列（言い換え後文字列）が含まれる。
【００４８】
ユーザが例えば編集対象文書中の「社員ナンバー」の文字列を「社員番号」に置換したい場合には、当該ユーザは、検索対象文字列「社員ナンバー」および置換文字列「社員番号」を含む換言対を指定することができる。
【００４９】
次に、言語解析部３２は、入力部３１によって入力された換言対（に含まれる検索対象文字列および置換文字列）を解析（例えば、形態素解析）する（ステップＳ２）。
【００５０】
類似性判定部３３は、言語解析部３２による解析結果に基づいて、入力部３１によって入力された換言対に含まれる検索対象文字列および置換文字列の類似性、つまり、当該検索対象文字列および置換文字列が類似であるか否かを判定する。
【００５１】
この場合、類似性判定部３３は、入力部３１によって入力された換言対に含まれる検索対象文字列および置換文字列（の解析結果）を比較することによって、当該検索対象文字列および置換文字列の類似度を算出する（ステップＳ３）。
【００５２】
この検索対象文字列および置換文字列の類似度は、当該検索対象文字列および置換文字列の２つの文字列を構成する文字に共通する文字列（共通文字列）があるか否かを基本的な観点として算出される。
【００５３】
具体的には、検索対象文字列および置換文字列の類似度は、当該検索対象文字列および置換文字列の文字数に対する当該検索対象文字列および置換文字列において共通する文字数の割合によって算出される。つまり、検索対象文字列および置換文字列において共通する文字数が多いほど類似度は高くなる。
【００５４】
ここで、上記したように検索対象文字列が「社員ナンバー」であり、置換文字列が「社員番号」である場合について具体的に説明する。この検索対象文字列「社員ナンバー」および置換文字列「社員番号」の文字数の合計（全文字数）は、６＋４＝１０である。一方、検索対象文字列「社員ナンバー」および置換文字列「社員番号」においては、「社員」の文字列が共通する。この場合、検索対象文字列「社員ナンバー」および置換文字列「社員番号」において共通する文字数の合計は、２＋２＝４である。これにより、検索対象文字列「社員ナンバー」および置換文字列「社員番号」の類似度は、４／１０＝０．４と算出される。
【００５５】
また、例えば検索対象文字列が「交通乗用具」であり、置換文字列が「交通機関」である場合には、当該検索対象文字列「交通乗用具」および置換文字列「交通機関」の文字数の合計は９であり、共通する文字列「交通」の文字数の合計は４である。これにより、検索対象文字列「交通乗用具」および置換文字列「交通機関」の類似度は、４／９＝０．４４と算出される。
【００５６】
なお、検索対象文字列および置換文字列の類似度は、当該検索対象文字列および置換文字列における共通文字列の位置関係の同一性を参酌して算出されてもよい。具体的には、検索対象文字列および置換文字列の類似度は、検索対象文字列および置換文字列における共通文字列の位置の同一性に応じて重み付けを行っても構わない。つまり、検索対象文字列および置換文字列における共通文字列の位置関係が同一の場合には、当該検索対象文字列および置換文字列の類似度を一定の割合で増加させてもよい。
【００５７】
上記したように検索対象文字列が「交通乗用具」であり、置換文字列が「交通機関」である場合には、検索対象文字列「交通乗用具」および置換文字列「交通機関」において共通文字列「交通」はともに前半に出現する。このように、検索対象文字列および置換文字列における共通文字列の位置関係が同一である場合には、検索対象文字列および置換文字列の類似度は、高くなるような重み付けが行われてもよい。
【００５８】
一方、例えば検索対象文字列が「社員番号」であり、置換文字列が「新入社員」であるような場合、検索対象文字列「社員番号」および置換文字列「新入社員」における共通文字列は「社員」であるが、検索対象文字列「社員番号」において共通文字列「社員」は前半に出現し、置換文字列「新入社員」において共通文字列「社員」は後半に出現する。このように、検索対象文字列および置換文字列における共通文字列の位置関係が異なる場合には、検索対象文字列および置換文字列の類似度が低くなるような重み付けが行われてもよい。
【００５９】
なお、検索対象文字列および置換文字列の類似度の算出方法は、当該検索対象文字列および置換文字列における共通する文字列（共通文字列）が多いほど類似性が高くなり、共通文字列の位置関係が同一であれば類似度が高くなるものであればよい。
【００６０】
次に、類似性判定部３３は、算出された類似度が予め定められた値（以下、閾値と表記）以上であるか否かを判定する（ステップＳ４）。
【００６１】
類似度が閾値以上であると判定された場合（ステップＳ４のＹＥＳ）、検索部３４は、意味クラス辞書格納部２３を参照して、検索対象文字列および置換文字列に対して意味クラス解析を実行する。これにより、検索部３４は、入力部３１によって入力された換言対に含まれる検索対象文字列および置換文字列における共通文字列の（意味を表す）意味クラスを特定する（ステップＳ５）。この場合、検索部３４は、検索対象文字列および置換文字列における共通文字列に対応づけて意味クラス辞書格納部２３に格納されている意味クラスを特定する。
【００６２】
上記したように検索対象文字列が「社員ナンバー」であり、置換文字列が「社員番号」であり、共通文字列が「社員」である場合には、例えば意味クラス「役職」が特定される。
【００６３】
次に、検索部３４は、特定された意味クラスと同一の意味クラスを持つ文字列を、対象文書格納部２２に格納されている編集対象文書から検索する（ステップＳ６）。
【００６４】
この場合、検索部３４は、特定された意味クラスに対応づけて意味クラス辞書格納部２３に格納されている文字列と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列を検索する。
【００６５】
ここで、上記したように検索対象文字列が「社員ナンバー」であり、置換文字列が「社員番号」であり、検索部３４によって特定された意味クラスが「役職」である場合を想定する。この場合、検索部３４は、意味クラス「役職」に対応づけて意味クラス辞書格納部２３に格納されている文字列を、編集対象文書から検索する。ここでは、例えば「従業員」の文字列が検索されたものとする。
【００６６】
更に、検索対象文字列は「社員ナンバー」であるため、当該検索対象文字列「社員ナンバー」における共通文字列「社員」以外の文字列は「ナンバー」である。したがって、検索部３４は、検索された「従業員」の文字列と検索対象文字列において共通文字列以外の文字列である「ナンバー」の文字列とが組み合わされた文字列「従業員ナンバー」を、編集対象文書から検索する。
【００６７】
なお、上記したように共通文字列「社員」の文字列の意味を表す意味クラスは「役職」であるため、編集対象文書中に「社員ナンバー」の文字列が出現する場合には、当該「社員ナンバー」（つまり、検索対象文字列自体）についても検索されることになる。
【００６８】
検索部３４によってこのような検索が行われることにより、入力部３１によって入力された換言対に含まれる検索対象文字列と類似する文字列が編集対象文書から検索される。
【００６９】
次に、置換部３５は、編集対象文書において、検索部３４によって検索された文字列を、入力部３１によって入力された換言対に含まれる置換文字列に置換する（ステップＳ７）。
【００７０】
具体的には、検索部３４によって検索された文字列が「従業員ナンバー」であり、置換文字列が「社員番号」である場合には、編集対象文書において当該「従業員ナンバー」の文字列が置換文字列である「社員番号」に置換される。
【００７１】
出力部３６は、置換部３５によって文字列が置換された編集対象文書を出力（表示）する（ステップＳ８）。具体的には、置換部３５によって文字列が置換された編集対象文書は、例えばディスプレイ等に表示される。これにより、ユーザによって指定された換言対を用いて検索および置換処理された後の編集対象文書の内容を当該ユーザは確認することができる。
【００７２】
一方、類似度が閾値以上でないと判定された場合（ステップＳ４のＮＯ）、検索部３４は、入力部３１によって入力された換言対に含まれる検索対象文字列を、対象文書格納部２２に格納されている編集対象文書から検索する（ステップＳ９）。なお、ステップＳ９の処理が実行されると、上記したステップＳ７の処理が実行される。
【００７３】
上記したように本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列および置換文字列の類似度が算出され、当該類似度が閾値以上である場合には、当該検索対象文字列および置換文字列における共通文字列の意味を表す意味クラスが特定される。また、本実施形態においては、特定された意味クラスを持つ文字列と検索対象文字列および置換文字列における共通文字列以外の文字列とが組み合わされた文字列が当該検索対象文字列と類似する文字列として編集対象文書から検索され、当該検索された文字列が置換文字列と置換される。
【００７４】
したがって、本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列と類似する文字列を当該換言対に含まれる置換文字列に置換することができる。これにより、本実施形態においては、ユーザによって指定された換言対から当該ユーザの意図を推測し、当該ユーザが意図する検索および置換処理を行うことができるため、文書に対する編集（検索および置換）の際の見落としが減り、当該文書に対する編集の効率を向上させることができる。
【００７５】
（第２の実施形態）
次に、図４を参照して、第２の実施形態について説明する。図４は、本実施形態に係る文書処理装置の主として機能構成を示すブロック図である。なお、前述した図２と同様の部分には同一参照符号を付してその詳しい説明を省略する。ここでは、図２と異なる部分について主に述べる。
【００７６】
また、本実施形態に係る文書処理装置のハードウェア構成は、前述した第１の実施形態と同様であるため、適宜、図１を用いて説明する。
【００７７】
本実施形態においては、編集距離による文字列の類似度を用いて編集対象文書から文字列を検索する点が、前述した第１の実施形態とは異なる。
【００７８】
図４に示すように、本実施形態に係る文書処理装置４０は、検索部４１を含む。本実施形態において、検索部４１は、図１に示すコンピュータ１０が外部記憶装置２０に格納されているプログラム２１を実行することにより実現されるものとする。
【００７９】
検索部４１は、言語解析部３２による解析結果に基づいて、入力部３１によって入力された換言対に含まれる検索対象文字列および置換文字列において文字列の類似度を算出する。
【００８０】
また、検索部４１は、検索対象文字列と編集距離が近い文字列を、当該検索対象文字列と類似する文字列として対象文書格納部２２に格納されている編集対象文書から検索する。なお、編集距離は、２つの文字列が異なる程度を表す。
【００８１】
次に、図５のフローチャートを参照して、本実施形態に係る文書処理装置４０の処理手順について説明する。ここでは、対象文書格納部２２には、編集対象文書が格納されているものとする。
【００８２】
まず、前述した図３に示すステップＳ１〜Ｓ４の処理に相当するステップＳ１１〜Ｓ１４の処理が実行される。
【００８３】
ステップＳ１４において類似度が閾値以上であると判定された場合、検索部４１は、ステップＳ１１において入力部３１によって入力された換言対に含まれる検索対象文字列との編集距離が近い文字列、具体的には、当該検索対象文字列との編集距離が予め定められた値（閾値）以下である文字列を、当該検索対象文字列と類似する文字列として対象文書格納部２２に格納されている編集対象文書から検索する（ステップＳ１５）。
【００８４】
なお、編集距離とは、２つの文字列が異なる程度を示す数値である。具体的には、編集距離は、例えば文字の挿入、削除または置換によって２つの文字列の一方を他方に変換する際に必要な手順の最小回数を示す。
【００８５】
ステップＳ１５の処理において文字列が編集対象文書から検索されると、前述した図３に示すステップＳ７およびＳ８の処理に相当するステップＳ１６およびＳ１７の処理が実行される。
【００８６】
また、ステップＳ１４において類似度が閾値以上でないと判定された場合、前述した図３に示すステップＳ９の処理に相当するステップＳ１８の処理が実行される。
【００８７】
上記したように本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列および置換文字列の類似度が算出され、当該類似度が閾値以上である場合には、当該検索対象文字列との編集距離が近い（閾値以下である）文字列が当該検索対象文字列と類似する文字列として編集対象文書から検索され、当該検索された文字列が置換文字列と置換される。
【００８８】
したがって、本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列と類似する文字列を当該換言対に含まれる置換文字列に置換することができる。これにより、本実施形態においては、前述した第１の実施形態と同様に、ユーザによって指定された換言対から当該ユーザの意図を推測し、当該ユーザが意図する検索および置換処理を行うことが可能となる。
【００８９】
（第３の実施形態）
次に、図６を参照して、第３の実施形態について説明する。図６は、本実施形態に係る文書処理装置の主として機能構成を示すブロック図である。なお、前述した図２と同様の部分には同一参照符号を付してその詳しい説明を省略する。ここでは、図２と異なる部分について主に述べる。
【００９０】
また、本実施形態に係る文書処理装置のハードウェア構成は、前述した第１の実施形態と同様であるため、適宜、図１を用いて説明する。
【００９１】
本実施形態においては、検索対象文字列および置換文字列において共通する文字列（共通文字列）のシソーラス上の位置を用いて編集対象文書から文字列を検索する点が、前述し第１および第２の実施形態とは異なる。
【００９２】
図６に示すように、本実施形態に係る文書処理装置５０は、検索部５１を含む。本実施形態において、検索部５１は、図１に示すコンピュータ１０が外部記憶装置２０に格納されているプログラム２１を実行することにより実現されるものとする。
【００９３】
また、文書処理装置５０は、シソーラス格納部２４を含む。本実施形態において、シソーラス格納部２４は、例えば外部記憶装置２０に格納される。
【００９４】
シソーラス格納部２４には、関連関係にある複数の文字列を階層構造で表すシソーラスが予め格納されている。なお、シソーラス格納部２４に格納されているシソーラス上においては、互いに意味的に近い単語を表す文字列が近い位置に配置される。
【００９５】
検索部５１は、シソーラス格納部２４に格納されているシソーラスを参照して、入力部３１によって入力された換言対に含まれる検索対象文字列および置換文字列における共通文字列の当該シソーラス上の位置を特定する。
【００９６】
検索部５１は、シソーラス格納部２４に格納されているシソーラス上において、特定された共通文字列の位置から予め定められた範囲内に位置する文字列（つまり、当該共通文字列と位置が近い文字列）と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列を、当該検索対象文字列と類似する文字列として対象文書格納部２２に格納されている編集対象文書から検索する。
【００９７】
次に、図７のフローチャートを参照して、本実施形態に係る文書処理装置５０の処理手順について説明する。ここでは、対象文書格納部２２には、編集対象文書が格納されているものとする。
【００９８】
まず、前述した図３に示すステップＳ１〜Ｓ４の処理に相当するステップＳ２１〜Ｓ２４の処理が実行される。
【００９９】
ステップＳ２４において類似度が閾値以上であると判定された場合、検索部５１は、シソーラス格納部２４に格納されているシソーラスを参照して、ステップＳ２１において入力部３１によって入力された換言対に含まれる検索対象文字列および置換文字列における共通文字列の当該シソーラス上の位置を特定する（ステップＳ２５）。以下、ステップＳ２５において特定された共通文字列のシソーラス上の位置を単に共通文字列の位置と称する。
【０１００】
次に、検索部５１は、シソーラス格納部２４に格納されているシソーラス上において、共通文字列と位置が近い文字列（当該共通文字列と当該シソーラスの階層構造における位置関係が近い文字列）と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列を、対象文書格納部２２に格納されている編集対象文書から検索する（ステップＳ２６）。
【０１０１】
ここで、シソーラス上において共通文字列と位置が近い文字列とは、例えばシソーラス格納部２４に格納されているシソーラスにおける階層構造において当該共通文字列の位置から予め定められた範囲内に位置する文字列である。また、予め定められた範囲は、例えばシソーラス格納部２４に格納されているシソーラスの階層構造（例えば、木構造）における例えば１階層を距離の単位とした場合に、検索対象文字列の位置から予め定められた距離以下の範囲である。
【０１０２】
ステップＳ２６において文字列が編集対象文書から検索されると、前述した図３に示すステップＳ７およびＳ８の処理に相当するステップＳ２７およびＳ２８の処理が実行される。
【０１０３】
また、ステップＳ２４において類似度が閾値以上でないと判定された場合、前述した図３に示すステップＳ９の処理に相当するステップＳ２９の処理が実行される。
【０１０４】
上記したように本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列および置換文字列の類似度が算出され、当該類似度が閾値以上である場合には、当該検索対象文字列および置換文字列における共通文字列とシソーラス上の位置が近い文字列（つまり、検索対象文字列のシソーラス上の位置と近い位置の文字列）と当該検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列が当該検索対象文字列と類似する文字列として編集対象文書から検索され、当該検索された文字列が置換文字列と置換される。
【０１０５】
したがって、本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列と類似する文字列を当該換言対に含まれる置換文字列に置換することができる。これにより、本実施形態においては、前述した第１および第２の実施形態と同様に、ユーザによって指定された換言対から当該ユーザの意図を推測し、当該ユーザが意図する検索および置換処理を行うことが可能となる。
【０１０６】
なお、本実施形態においては、共通文字列とシソーラス上の位置が近い文字列と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列が検索対象文字列と類似する文字列として編集対象文書から検索されるものとして説明したが、例えば検索対象文字列とシソーラス上の位置が近い文字列が当該検索対象文字列と類似する文字列として検索されても構わない。
【０１０７】
（第４の実施形態）
次に、図８を参照して、第４の実施形態について説明する。図８は、本実施形態に係る文書処理装置の主として機能構成を示すブロック図である。なお、前述した図２と同様の部分には同一参照符号を付してその詳しい説明を省略する。ここでは、図２と異なる部分について主に述べる。
【０１０８】
また、本実施形態に係る文書処理装置のハードウェア構成は、前述した第１の実施形態と同様であるため、適宜、図１を用いて説明する。
【０１０９】
本実施形態においては、検索対象文字列および置換文字列において共通する文字列（共通文字列）によって表される単語と共起関係にある単語（以下、共起単語と表記）を用いて編集対象文書から文字列を検索する点が、前述した第１〜第３の実施形態とは異なる。
【０１１０】
図８に示すように、本実施形態に係る文書処理装置６０は、検索部６１を含む。本実施形態において、検索部６１は、図１に示すコンピュータ１０が外部記憶装置２０に格納されているプログラム２１を実行することにより実現されるものとする。
【０１１１】
また、文書処理装置６０は、共起単語格納部２５を含む。本実施形態において、共起単語格納部２５は、例えば外部記憶装置２０に格納される。
【０１１２】
共起単語格納部２５は、互いに共起関係にある単語が対応づけて予め格納されている。なお、共起単語格納部２５に格納されている互いに共起関係にある単語の情報は、例えば多数の文書を解析等することによって予め用意されているものとする。
【０１１３】
検索部６１は、共起単語格納部２５を参照して、入力部３１によって入力された換言対に含まれる検索対象文字列および置換文字列における共通文字列によって表される単語の共起単語（当該共通文字列によって表される単語と共起関係にある単語）を特定する。検索部６１は、例えば共通文字列によって表される単語に対応づけて共起単語格納部２５に格納されている単語を特定する。
【０１１４】
検索部６１は、特定された共起単語に基づいて共通文字列によって表される単語と共起単語の共通性が高い単語を特定し、当該特定された共起単語の共通性が高い単語を表す文字列と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列を、検索対象文字列と類似する文字列として対象文書格納部２２に格納されている編集対象文書から検索する。
【０１１５】
次に、図９のフローチャートを参照して、本実施形態に係る文書処理装置６０の処理手順について説明する。ここでは、対象文書格納部２２には、編集対象文書が格納されているものとする。
【０１１６】
まず、前述した図３に示すステップＳ１〜Ｓ４の処理に相当するステップＳ３１〜Ｓ３４の処理が実行される。
【０１１７】
ステップＳ３４において類似度が閾値以上であると判定された場合、検索部６１は、共起単語格納部２５を参照して、ステップＳ２１において入力部３１によって入力された換言対に含まれる検索対象文字列および置換文字列における共通文字列によって表される単語の共起単語（当該共通文字列によって表される単語と共起関係にある単語）を特定する（ステップＳ３５）。この場合、検索部６１は、共通文字列によって表される単語に対応づけて共起単語格納部２５に格納されている単語を共起単語として特定する。
【０１１８】
次に、検索部６１は、特定された共起単語に基づいて、共通文字列によって表される単語と共起単語の共通性が高い単語を特定する。共通文字列によって表される単語と共起単語の共通性が高い単語とは、当該共通文字列によって表される単語と共通の共起単語を持つ単語であり、ステップＳ３５において特定された共起単語と共起関係にある単語である。つまり、検索部６１は、ステップＳ３５において特定された共起単語に対応づけて共起単語格納部２５に格納されている単語を、共通文字列によって表される単語と共起単語の共通性が高い単語として特定する。
【０１１９】
検索部６１は、特定された共起単語の共通性が高い単語を表す文字列と検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列を、当該検索対象文字列と類似する文字列として対象文書格納部２２に格納されている編集対象文書から検索する（ステップＳ３６）。
【０１２０】
ステップＳ３６において文字列が編集対象文書から検索されると、前述した図３に示すステップＳ７およびＳ８の処理に相当するステップＳ３７およびＳ３８の処理が実行される。
【０１２１】
また、ステップＳ３４において類似度が閾値以上でないと判定された場合、前述した図３に示すステップＳ９の処理に相当するステップＳ３９の処理が実行される。
【０１２２】
上記したように本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列および置換文字列の類似度が算出され、当該類似度が閾値以上である場合には、当該検索対象文字列および置換文字列における共通文字列によって表される単語と共起単語の共通性が高い単語（つまり、共通文字列によって表される単語と共起単語が共通する単語）を表す文字列と当該検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列が当該検索対象文字列と類似する文字列として編集対象文書から検索され、当該検索された文字列が置換文字列と置換される。
【０１２３】
したがって、本実施形態においては、ユーザによって指定された換言対に含まれる検索対象文字列と類似する文字列を当該換言対に含まれる置換文字列に置換することができる。これにより、本実施形態においては、前述した第１〜第３の実施形態と同様に、ユーザによって指定された換言対から当該ユーザの意図を推測し、当該ユーザが意図する検索および置換処理を行うことが可能となる。
【０１２４】
なお、本実施形態においては、共通文字列によって表される単語と共起単語の共通性が高い単語を表す文字列と、当該検索対象文字列における共通文字列以外の文字列とが組み合わされた文字列が当該検索対象文字列と類似する文字列として編集対象文書から検索されるものとして説明したが、例えば検索対象文字列によって表される単語と共起単語の共通性が高い単語を表す文字列が当該検索対象文字列と類似する文字列として検索されても構わない。
【０１２５】
以上説明した少なくとも１つの実施形態によれば、ユーザが意図する検索および置換を行うことが可能な文書処理装置およびプログラムを提供することができる。
【０１２６】
なお、上述した第１〜第４の実施形態のうちの２つ以上を適宜組み合わせることは可能である。例えば第１および第２の実施形態を組み合わせる場合には、前述した図３に示すステップＳ６の処理の後に前述した図５に示すステップＳ１５の処理が実行されればよい。他の実施形態を組み合わせる場合についても同様である。
【０１２７】
また、本願発明は、上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記各実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、各実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。  
【符号の説明】
【０１２８】
１０…コンピュータ、２０…外部記憶装置、２２…対象文書格納部、２３…意味クラス辞書格納部、２４…シソーラス格納部、２５…共起単語格納部、３０，４０，５０，６０…文書処理装置、３１…入力部、３２…言語解析部、３３…類似性判定部、３４，４１，５１，６１…検索部、３５…置換部、３６…出力部。
【図１】
0005472921.tif 000002
【図２】
0005472921.tif 000003
【図３】
0005472921.tif 000004
【図４】
0005472921.tif 000005
【図５】
0005472921.tif 000006
【図６】
0005472921.tif 000007
【図７】
0005472921.tif 000008
【図８】
0005472921.tif 000009
【図９】
0005472921.tif 000010