JP2009521026A - 探索および置換入力の派生を活用する探索および置換機能でテキストを編集するための方法およびシステム - Google Patents
探索および置換入力の派生を活用する探索および置換機能でテキストを編集するための方法およびシステム Download PDFInfo
- Publication number
- JP2009521026A JP2009521026A JP2008546300A JP2008546300A JP2009521026A JP 2009521026 A JP2009521026 A JP 2009521026A JP 2008546300 A JP2008546300 A JP 2008546300A JP 2008546300 A JP2008546300 A JP 2008546300A JP 2009521026 A JP2009521026 A JP 2009521026A
- Authority
- JP
- Japan
- Prior art keywords
- search
- expression
- replacement
- user
- text
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000009795 derivation Methods 0.000 title claims description 9
- 230000006870 function Effects 0.000 title description 12
- 230000014509 gene expression Effects 0.000 claims abstract description 124
- 238000004590 computer program Methods 0.000 claims abstract description 3
- 238000006467 substitution reaction Methods 0.000 claims description 7
- 230000002452 interceptive effect Effects 0.000 abstract description 5
- 230000009466 transformation Effects 0.000 description 10
- 238000012360 testing method Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/268—Morphological analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Document Processing Apparatus (AREA)
Abstract
【課題】ユーザによって提供された初期探索表現および初期置換表現の対から開始するテキストの探索および置換編集動作を行うための方法、コンピュータ・プログラム、およびシステムが、初期探索表現および初期置換表現の許容される語形変化した形式を規定する各規則を初期探索および置換表現に提供して、規則に対して有効な初期探索表現および初期置換表現の派生対のすべてを識別すること。
【解決手段】派生対の探索表現および置換表現は、初期探索および置換表現の語形変化した形式に対応する。その後、派生対の探索表現のテキスト内の各一致について、テキスト内で置換するための派生対をユーザに対して提案する。ユーザ・インターフェースは、テキスト・エディタの通常のグラフィカル・ユーザ・インターフェースを通じるか、またはテキスト・ベースの端末ユーザ・インターフェースを通じて行われる。探索および置換動作は、探索および置換コマンドを含むプログラムの実行を通じた受動的なものであってもよいし、または、プログラムの実行中に選択を行うようにユーザに要求することによる対話的なものであってもよい。
【選択図】図2
【解決手段】派生対の探索表現および置換表現は、初期探索および置換表現の語形変化した形式に対応する。その後、派生対の探索表現のテキスト内の各一致について、テキスト内で置換するための派生対をユーザに対して提案する。ユーザ・インターフェースは、テキスト・エディタの通常のグラフィカル・ユーザ・インターフェースを通じるか、またはテキスト・ベースの端末ユーザ・インターフェースを通じて行われる。探索および置換動作は、探索および置換コマンドを含むプログラムの実行を通じた受動的なものであってもよいし、または、プログラムの実行中に選択を行うようにユーザに要求することによる対話的なものであってもよい。
【選択図】図2
Description
本発明は、一般的には、テキスト編集に関し、より特定的には、改良された「探索および置換(Find and Replace)機能」に関する。
プログラマは、自身の要求にほぼ合う関連コードをコピーし、その一部を置換して当該新規のコードの最良の目的に合うようにすることによって、新たな機能/方法をソースコードに付加することが非常に多い。特に、ある集合体内のある要素に適したパターン(あるクラスにおけるある属性または方法、もしくはあるパッケージまたはクラス内のあるクラス)は、既存の要素のコードをコピーし、その後、既存の要素の名前を作成しようとする要素の名前で置換することよって、伝播させることができる。
例えば、作成しようとする概念セグメントにとって望ましいと考えられる特徴をデータを扱う以下のクラスが有していることを考慮して、プログラマは、典型的には、DataElement.javaファイルの内容をSegment.javaファイルにコピーし、その後、Segment.javaファイルを編集してデータ要素に対するすべての参照をセグメントに対する参照に変換することになろう。
public class DataElement{
public DataElement(){
....
}
private String DEFAULT_DATA_ELEMENT_NAME=”dummyName”;
private String dataElementName=DEFAULT_DATA_ELEMENT_NAME;
/** Return the data element name.*/
public String getDataElementName(){
return dataElementName;
}
}
public class DataElement{
public DataElement(){
....
}
private String DEFAULT_DATA_ELEMENT_NAME=”dummyName”;
private String dataElementName=DEFAULT_DATA_ELEMENT_NAME;
/** Return the data element name.*/
public String getDataElementName(){
return dataElementName;
}
}
このような非常に小さな例に関しては、代わりに、プログラマは、左欄の項目を右欄の対応項目に置換するためにいくつかの編集をすることになろう。
data element segment
DATA_ELEMENT SEGMENT
dataElement segment
DataElement Segment
data element segment
DATA_ELEMENT SEGMENT
dataElement segment
DataElement Segment
ソースの長さが長くなれば、プログラマは、エディタで利用可能な探索および置換機能の使用に切り換えることになろう(ウィンドウ化システムを使用しているエディタかどうかに関わらず、探索および置換コマンドは利用可能な場合が非常に多い)。そうなると、単一の概念置換(「データ要素をセグメントに論理的に置換する」)に関して、プログラマは4つの探索および置換コマンドを起動することになるという問題点がある。
この問題の従来の解決策には、以下のものが含まれる。
‐概念の異なる形式同士を区別するための大文字と小文字とを区別するオプション(match case option)。これは、有用ではあるが、問題を分割するだけであり、大文字および小文字毎に最終決定をプログラマに委ねるものである。
‐大文字と小文字とを区別するオプションを使用しない場合には、何らかの置換ツール(マイクロソフト(登録商標)社のWord2000など)が、大文字と小文字との単純な区別を類推することができる。例えば、「data element」を「segment」に置換するように求めると、「Data element」を「segment」に置換するための申し出を生じさせて、その後、それを「Segment」に有効に変換することになろう。なお、同ツールに「data element」を「segment element」に変換するように求めると、「data Element」を「segment Element」に変換することはなく、代わりに「segment element」を生じさせる。
‐高度な通常表現のマッチング。VI、Emac、または他の高性能な置換を使用して、熟練したプログラマは、多様な置換要求を実施することができる。しかしながら、これは、高度な置換表現を必要とするのでエラーの生じやすいやり方であり、最も困難な場合をまだ解決するものではない。
‐概念の異なる形式同士を区別するための大文字と小文字とを区別するオプション(match case option)。これは、有用ではあるが、問題を分割するだけであり、大文字および小文字毎に最終決定をプログラマに委ねるものである。
‐大文字と小文字とを区別するオプションを使用しない場合には、何らかの置換ツール(マイクロソフト(登録商標)社のWord2000など)が、大文字と小文字との単純な区別を類推することができる。例えば、「data element」を「segment」に置換するように求めると、「Data element」を「segment」に置換するための申し出を生じさせて、その後、それを「Segment」に有効に変換することになろう。なお、同ツールに「data element」を「segment element」に変換するように求めると、「data Element」を「segment Element」に変換することはなく、代わりに「segment element」を生じさせる。
‐高度な通常表現のマッチング。VI、Emac、または他の高性能な置換を使用して、熟練したプログラマは、多様な置換要求を実施することができる。しかしながら、これは、高度な置換表現を必要とするのでエラーの生じやすいやり方であり、最も困難な場合をまだ解決するものではない。
これらの解決策に共通している限界は、プログラマが概念の各変形を明確に特定しつつ、上述の状態を複数回使用して最終的な望ましい結果を得るということを伴うということである。VIまたはEmacのみがDATA_ELEMENTのような場合に対処できるだろうが、他の場合に対する機能は欠けている。
上記で考察した問題を、インスタンス間の違いを決定するいくつかのパラメータに対して規則的なプログラミング・パターンを適用するという、より一般的な問題に拡張するとすると、そのようなことを行うための方法は、最終的なコードの局面に近くなりうるテンプレート(例えば、ソース・ツールの中にはテンプレートを提供して、コードの一部を生成することができるものがある)、またはより概念的な標記(UMLなど)をはじめとして数多くの方法がある。必要とされるパターンがツール内またはプログラマによって徐々に開発されたライブラリに内にある場合には全く申し分ない。プログラマが新たな方法を探って新生のテンプレートを練り上げ中の場合には、コピー/貼り付け/探索および置換の状態は、遥かに自然なものとなる。
本状態の探索および置換フェーズを行う他のやり方は、検討されたプログラミング言語の意味規則を認識しているリファクタリング・ツールを伴うというものである。例えば、DataElementクラスを他のパッケージにコピーして、その後、Segmentに名前を付け替えるようにリファクタリング・ツールに要求する。これによってクラス名、その構成者名、および必要に応じてコメントにおけるクラス名に対する参照をも適切に(テキストをベースとする探索および置換ツールよりも正確に)変更することになろうが、dataElementなどの派生形式と合致することはないだろう。さらに、意味規則レベルで動作することは、必ずしも望ましいことではなく、可能であるとも限らない。例えば、新たなクラスが既存以外の同一のパッケージに作成される場合、名前を付け替える処理の一部を行う直前にそれをコンパイルする方法がない。
例えば、マイクロソフト(登録商標)社のWord2000は、置換での最初の文字に対する適応性のある管理を提供する。このエディタは、探索すべき単語の最初の位置にある場合の大文字について、部分的なサポートを提供する。通常の表現に対して探索および置換を実行すると、検索された文字列に大文字がない場合に適切な置換大文字を特定することは困難である。「data element」を探索して「segment element」に置換するために適用されたこの探索および置換は、Data elementにはうまく機能するが、data Elementにはうまく機能しない。
発明の名称「Morphological search and replace appling to natural language」のマイクロソフト社の米国特許第5873660号は、同一の根の語を有する単語形式のセットを取り出すことによって単語の変化形を探索することを教示している。これは、探索および置換単語がスピーチの一部と一致することを意味する。入力された探索および置換単語の語形変化した形式を探索するためのこの解決策は、自然言語で書かれたテキストにとっては典型的である。なぜならば、語形変化した形式は、言語の文法規則を適用することによって、入力された探索および置換単語から派生可能だからである。しかしながら、この解決策では、例えばプログラミング言語であるテキストの入力された探索および置換単語の語形変化した形式を探索することはできない。なぜならば、語形変化した形式は、参照可能な既知の文法規則による入力された探索および置換単語とは関係のない、別の語彙構文上の形式だからである。
さらに、米国特許第5873660号のような自然言語に対する従来技術の解決策は、辞書に基づいている。辞書は、ある所定の語についての語形変化した単語形式のすべてを記録している。辞書を記憶するデータベースの大きさおよびこのデータベースを維持するためのコストは、時間の経過と共に非常に非現実的なものとなる。データベースのサイズおよびその発展の管理がなおさら非現実的なものとなるのは、単語の代わりに、プログラミング言語の場合のように、探索および置換機能を単語ばかりでなく表現にも適用させる必要がある場合である。この場合には、辞書は、可能性のある単語のくみあわせのそれぞれについての各表現について語形変化した形式を含まなければならない。
よって、1つのパスで実行され、プログラミング言語で記述されたテキスト、または入力された探索または置換単語または表現の語形変化した形式が既知の自然言語の意味規則または文法規則に従わない単語または表現である他の種類のテキストに適用する、探索および置換編集機能が必要である。これらの言語によって、入力された探索または置換単語または表現の語形変化した形式は、同一の概念に対する別の認定された語彙構文上の集大成となろう。
従って、本発明の目的は、自然言語であるとは限らない言語で記述されたテキスト上の、入力された探索および置換単語または表現あるいはこれらの入力の語形変化した形式またはその両方の探索および置換を1つのパスで実行するための方法を提供する。
請求項1から14によれば、ユーザによって提供された初期探索表現および初期置換表現の対から開始するテキストの探索および置換編集動作を行うための方法、コンピュータ・プログラム、およびシステムが、初期探索表現および初期置換表現の許容される語形変化した形式を規定する各規則を初期探索および置換表現に提供して、規則に対して有効な初期探索表現および初期置換表現の派生対のすべてを識別することで、本目的は達成される。派生対の探索表現および置換表現は、初期探索および置換表現の語形変化した形式に対応する。その後、派生対の探索表現のテキスト内の各一致するものについて、テキスト内で置換するための派生対をユーザに対して提案する。ユーザ・インターフェースは、テキスト・エディタの通常のグラフィカル・ユーザ・インターフェースを通じて、またはテキスト・ベースの端末ユーザ・インターフェースを通じて行われる。探索および置換動作は、探索および置換コマンドを含むプログラムの実行を通じた受動的なものであってもよいし、または、プログラムの実行中に選択を行うようにユーザに要求することによる対話的なものであってもよい。
本発明の探索および置換方法は、自然言語を意識せずに、純粋な語彙構文上の変換を適用することによって形成される。単語または表現が自然言語で記述されている場合、任意の種類のテキストに対して適用するが、対応する自然言語についての文法規則を離れてテキストにおいて使用されてもよい。
本発明の方法は、単一の概念についての複数の構文上の形式に対して統一的な探索および置換機能を提供するものであって、これは、プログラミング環境において得に必要とされている。他の解決策は、単一の概念についての互いに異なる構文上の形式のまとまり全体において互いにリンクしない。
探索および置換は、複数ではなく単一の対話内で行われ、ユーザは、1つの探索および置換セッションを起動すればよい。他の解決策では、いくつかのパスを行なう必要がある。
本発明の好ましい実施の形態の解決策によって、単語または表現の許容される語形変化した形式を規定する規則のセットのみが記憶される。よって、入力された探索および置換単語または表現の語形変化した形式を記憶するための膨大な辞書を使用する必要がない。
本発明は、プログラミング・ツール以外の編集ツールにとっても有利となりうるだろう。それは実質的には探索および置換概念と同様に一般的である。実際、特にこの15年間、プログラミングにおいては、名前の各形式が何らかの情報をプログラマに伝達し、かつその名前自体が概念情報を伝達するという、複数の形式の長い名前を極めて一貫して使用することが非常に重要視されてきた。最近では、いくつかのソフトウェア開発方法は、プログラム・ソース・コードの役割が究極の注意対象であることを強調しており、当該コードを開発するための試験的な方法に対して好意的である。これにより、プログラム・エディタが、本発明にとって第一級の対象となる。
プログラミングの領域外の例は、以下のようなものであろう。
ドメイン:苗字を使用する履歴、伝記
元のテキスト:
「エリントン公が生まれたのは…エリントンは特に…で知られている」
規則:
‐名前の称号→名前の称号
→名前の称号
→名前
適用:
‐探索および置換句(「エリントン公」,「皇太子」)
‐結果:
「皇太子が生まれたのは…皇太子は特に…で知られている」
ドメイン:苗字を使用する履歴、伝記
元のテキスト:
「エリントン公が生まれたのは…エリントンは特に…で知られている」
規則:
‐名前の称号→名前の称号
→名前の称号
→名前
適用:
‐探索および置換句(「エリントン公」,「皇太子」)
‐結果:
「皇太子が生まれたのは…皇太子は特に…で知られている」
本発明の解決策は、大きな言語依存データベースを必要とせず、より単純なアルゴリズムを使用してさらに完全な効果を生じさせるものである
本発明の解決策は、既存の探索および置換技術のほとんどの機能と組み合わせることによって改良可能である。例えば、一致するものをスキップする、またはそれを置換表現で置換するためにエンド・ユーザに与えられた従来の選択と完全に両立できる。探索表現において大文字または小文字を考慮するか否か、完全一致のみとするか、または単語の一部一致を容認するかというオプションとも両立でき、より一般的には、探索表現において通常の表現の使用と両立できる。さらに、コンピューティング環境によって単語がキーワードとして使用されていない場合という特定の事情においては、対応する自然言語についての文法規則に従うテキストの単語についての語形変化した形式がもしあればそれらを探索するための従来技術の任意の他の既存の解決策と組み合わせることもできる。
他の利点を以下に列挙する。
‐本発明の探索および置換機能は、変形を生成し、ユーザ自身が行うように要求することはない。これによって、時間が節約され、タイピングの誤りが防止される。また、これによって、探索および置換を行なう際に、ユーザが考慮しなければ特定の語形変化した形式が残ってしまうことも防止される。
‐例えばプログラミング・コード・テキストに対して適用する場合に、本発明の探索および置換は、テキストの単語のみを考慮すればよく、プログラムの論理表現は考慮しなくてよいので、(このことは、開発工程においてしばしば生じる)不完全で不正確なプログラム・テキストに対処する。最も強力な他の解決策の中には(特にリファクタリング・ツール)、プログラミングの誤りに対して許容性が低いものもある。
‐本発明の解決策は、既存の探索および置換機能アーキテクチャに統合することができ、本発明を実施するコストが低くなる一方、ユーザにとって単純明快ともなる。
‐本発明の探索および置換方法は、柔軟性のある拡張可能かつカスタマイズ可能なやり方で行われる。エンド・ユーザ組織は、企業、部署、チーム、および個人ベースでその要求に対する解決策を適応させることができる。
‐本方法の動作モードは、ある他のドメインからのプログラマまたはユーザに非常に理解しやすい。
‐上述のように、本発明の方法は、複数のプログラミング言語に適用でき、プログラミングの範囲を超えた他の正式な言語に対しても適用できる可能性を有する。
‐本発明の探索および置換機能は、変形を生成し、ユーザ自身が行うように要求することはない。これによって、時間が節約され、タイピングの誤りが防止される。また、これによって、探索および置換を行なう際に、ユーザが考慮しなければ特定の語形変化した形式が残ってしまうことも防止される。
‐例えばプログラミング・コード・テキストに対して適用する場合に、本発明の探索および置換は、テキストの単語のみを考慮すればよく、プログラムの論理表現は考慮しなくてよいので、(このことは、開発工程においてしばしば生じる)不完全で不正確なプログラム・テキストに対処する。最も強力な他の解決策の中には(特にリファクタリング・ツール)、プログラミングの誤りに対して許容性が低いものもある。
‐本発明の解決策は、既存の探索および置換機能アーキテクチャに統合することができ、本発明を実施するコストが低くなる一方、ユーザにとって単純明快ともなる。
‐本発明の探索および置換方法は、柔軟性のある拡張可能かつカスタマイズ可能なやり方で行われる。エンド・ユーザ組織は、企業、部署、チーム、および個人ベースでその要求に対する解決策を適応させることができる。
‐本方法の動作モードは、ある他のドメインからのプログラマまたはユーザに非常に理解しやすい。
‐上述のように、本発明の方法は、複数のプログラミング言語に適用でき、プログラミングの範囲を超えた他の正式な言語に対しても適用できる可能性を有する。
図1は、好ましい実施の形態に係る本発明の方法のシステム環境を説明している。本発明の好ましい実施の形態は、コンピュータ上で実施するソフトウェア・プログラムである。テキスト・エディタ(120)が、オペレーティング・システム(100)上にインストールされており、これに対してグラフィカル・ユーザ・インターフェース(110)を提供している。テキスト・エディタ(120)によって、エンド・ユーザは、テキスト(12)を視覚化および修正することができる。他の機能の中では、テキスト・エディタ(120)は、エンド・ユーザに対して、探索および置換ダイアログ(122)によって具体化された探索および置換機能を提供する。本発明は、探索および置換ダイアログ(122)の機能を、プログラミング指向の探索および置換拡張(123)によって拡張するが、この入力、出力、および動作については、他の図面を参照して本明細書において詳細に後述する。この拡張は、エディタの探索および置換機能に織り込まれなければならない。これは、場合によっては、外部のAPIの使用によって可能であってもよいと期待されているが、一般的には、エディタのソース・コードを修正しなければならなくなろう。後者の場合には、必要な修正は、前記エディタの探索および置換モジュールに対して主に影響を与えるが、明確に規定されたモジュールにそのコードが組織化されていない場合には例外である。本発明は、探索および置換を含む、事実上すべてのテキスト編集ソフトウェア・パッケージ内で実施することができる。例としては、統合開発環境といった好ましい実施の形態において開示されるものよりも十分なユーザ・インターフェースを有するシステム、または端末指向のテキスト・エディタといったより簡易なユーザ・インターフェースが挙げられる。探索および置換機能は、テキストに対する提案された変更をユーザが選択的に承諾または拒否するための対話手段を提供するのが好ましいが、これは必須ではない。
図2は、好ましい実施の形態の方法を実行する際に使用される構成要素を示す。
なお、ユーザ・インターフェースは、テキスト・エディタの通常のグラフィカル・ユーザ・インターフェースを通じて、またはテキスト・ベースの端末ユーザ・インターフェースを通じて行われてもよい。探索および置換動作は、探索および置換コマンドを含むプログラムの実行を通じた受動的なものであってもよいし、または、プログラムの実行長に選択をおこなうようにユーザに要求することによる対話的なものであってもよい。好ましい実施の形態において、既存のテキスト・エディタのグラフィカル・ユーザ・インターフェースを通じて、および、ユーザとのダイアログを通じた対話的なやり方で行われる。
ユーザ・インターフェースは、テキスト・エディタの下で、探索および置換ダイアログ(122)をテキスト(121)にインターフェースする。探索および置換ダイアログは、テキスト(121)に作用し、ユーザ入力を、探索および置換入力領域(221)および置換ダイアログ制御領域(222)で収集する。探索および置換入力領域(221)は、ほとんどのテキスト編集ソフトウェア・パッケージにおいて従来から存在し、
‐1つ以上の単語から構成されなければならない、探索表現を収集するための入力領域と‐探索表現として形成される、置換表現を収集するための入力領域と、
‐ゼロから数多くのオプション(大文字と小文字とを区別するか否か、全文書を探索するか否かなど)と
を実質的に備える。
‐1つ以上の単語から構成されなければならない、探索表現を収集するための入力領域と‐探索表現として形成される、置換表現を収集するための入力領域と、
‐ゼロから数多くのオプション(大文字と小文字とを区別するか否か、全文書を探索するか否かなど)と
を実質的に備える。
置換ダイアログ制御領域は、置換表現で置換したいかどうかを探索表現の一致するものベースでユーザが判断することができる数個のグラフィカル・コントロールから従来構成されている。これは、すべての残りの一致するものを置換するためのオプションまたは他の同様の改良によって拡張されることが多い。本発明の好ましい実施の形態において、任意の所定の一致するものについての可能な置換表現すべてを探索表現に表示する複数選択インターフェースが追加される。規則記憶装置(230)において指定された規則と、テキスト(121)の詳細な内容によっては、各探索表現は、0個、1個、または数多くの一致するものを有してもよく、もしあれば、一致するものはそれぞれ、1個または数多くの置換表現を生じさせてもよい。数多くの置換表現が可能である場合はいつでも、置換ダイアログ制御領域(222)は、ユーザに対して、ユーザにとって好ましい置換表現を選択する(また一致するものを共にスキップする)可能性を与えなければならない。置換制御領域には、別個の探索表現が1回に1つずつ列挙され、各探索表現についての可能な置換表現のすべてが列挙される。
規則データベース(230)は、探索および置換対に対して適用されなければならない変換規則を含んでいる。変換規則に対しては、制約はほとんど適用されない(実際には、決して失敗してはならず、空列を返してはならない)。よって、プログラミング言語で歩かないかを問わず、任意の正式な言語の要求に対処することができる。この趣旨で、本発明の様々な実施の形態が互いに異なるプログラミング言語、またはより高次の正式な言語(例えば、パターン・マッチング・エンジン)さえも使用してもよい。規則の一例は、入力列のすべてのアルファベット文字を大文字で始めて、残りの他の文字を変更しないようなJava(登録商標)方法である。これは、本発明の好ましい実施の形態の方法特有および本質的な部分である。探索および置換対データベース(240)は、規則(230)を探索および置換ダイアログ(122)に入力された探索および置換対に対して適用することによって取得された探索および置換対を重複なしで記憶する。
変形生成エンジン(250)は、探索および置換ダイアログ(122)に入力された初期探索および置換対の列に適用して、語形変化した形式を取得する。初期探索および置換対の語形変化した形式は、探索および置換対データベース(240)に記憶される。変形生成エンジン(250)は、規則データベース(230)のすべての可能な規則を初期探索および置換対に実質的に適用して、その後、重複分を削除する。重複の削除は、すべての可能な変形の生成後に行う、生成中にちょうど間に合うように行うことができる。変形生成エンジン(250)技術は、様々な性質のものでありうる。本発明の好ましい実施の形態においては、Java方法として記述された規則(230)を活用することが可能な、Javaクラスまたはクラスのクラスタであろう。
テキスト(121)内の一致するものの指標は、探索および置換対(240)をポイントする探索表現を記憶する。テキスト内の指標の一例は、テキスト(121)内の一致するものの位置と、一致する文字列のテキスト内の範囲とを記憶することができ、それに対して、一致する探索表現の識別子が付加される。テキスト・エディタ(120)によっては、探索および置換動作中に一致するものを正式に記憶することを既に確立および活用してもよい。本発明は、一致するものそれぞれについて一致する探索表現を少なくとも示すことによって従来のものを補足する、より十分な一致データベース(260)を必要とする(本発明が関与しない場合には、探索表現は一意である)。
従来の検索エンジン(270)は、テキスト(121)内における探索および置換対(240)の探索表現について一致するものを識別して、一致データベース(260)の入力を生じさせることができる。本発明は、検索エンジン(270)をほとんどの場合に修正することなく活用することが可能であろうことが期待されているが、各パスが所定の探索表現について一致するものを収集する、複数の探索パスが必要となる場合がある。
図3は、本発明の好ましい実施の形態において実施されるような探索および置換動作のフローチャートである。探索および置換動作が開始されると(300)、ユーザは、探索および置換ダイアログ(122)の探索および置換領域(221)を通じて探索および置換対を入力(310)する。規則データベースに記憶された変換規則は、探索および置換対に適用されて(320)、当該対についての語形変化した形式を探索し、探索および置換対データベース(240)に記憶させる(本ステップについてのさらなる詳細は、図4に提供されている)。検索エンジン(270)は、テキスト(121)を検索して(330)、探索および置換対データベース(240)の探索表現の一致するものを探索する。探索された一致するものは、一致データベース(260)に記憶される。一致するものがすべて探索されると、一致データベース(260)で取り出された一致するものそれぞれ(テスト341にはいと回答)は、テキスト(121)の対応部分において探索および置換ダイアログによって強調表示される。置換制御領域(222)には、一致するものについてのすべての可能な置換表現が供給され(343)、これらは、探索表現がステップ340において探索された一致するもののうちの1つと同一である、探索および置換対データベース(240)内で探索される探索および置換対の置換部分である。置換制御領域(222)によって、置換表現または置換なしというユーザの選択が収集される(344)。ユーザが置換なしを選択する場合(テスト345にいいえと回答)、新たな一致するものが読み出され(340)、一致データベースで一致するものがすべて取り出される(テスト241にいいえと回答)まで(終了390)、新たなループ(342〜346)が行われる。ユーザが置換を選択する場合(テスト345にはいと回答)、強調表示されたテキストは、ステップ344においてユーザによって選択された置換表現に置換され(346)、その後、新たに一致するものが一致データベースで取り出される。
なお、本発明の他の実施の形態がある。図3のフローチャートにおいて与えられている例において、一致するものすべてがまず収集され(300〜330)、その後、一致するものすべてが記憶されると、所定の順序でユーザに対して表示される(340〜390)。他のオプションの1つとして、一旦計算された結果を表示するというものもありうるだろう。
一致するものを表示するための順序も可変である。好ましい選択の1つは、各異なる探索表現について、同じ探索表現で始まる一致対のすべてを連続して表示するというものであってもよい。他の選択としては、探索表現の一致するものがテキスト内で現れる順序で一致対を表示するというものであってもよい。探索および置換動作が最も簡単になる3つ目の可能性としては、可能な置換の語形変化した形式のすべてのうちの第1のユーザ選択が、テキスト内の以前の一致するものに対して行った以前のユーザ選択に対応する置換の語形変化した形式であると提案することである。
図4は、図3の変換規則(320)を適用するためのステップの可能な実施形態の詳細を示す。ステップ(320)は、規則データベースに記憶された変換規則を探索および置換対に適用して、当該対についての語形変化した形式を探索するためのものである。このステップは、ステップ310の実行後に開始して、入力は、表現の対からなり、第1の要素は探索表現であり、第2の要素は置換要素である。これらは、ユーザのインターフェースが受動的である場合、またはグラフィカル・ユーザ・インターフェースの探索および置換ダイアログ(122)を通じて、図3の入力された探索および置換対(310)ステップ中に、エンド・ユーザからプログラム内で実行されるべきコマンドとして提供される。好ましい実施の形態のオプションは、グラフィカル・ユーザ・インターフェースを使用することであって、好ましくは、ユーザとのダイアログを有する通常のエディタのグラフィカル・ユーザ・インターフェースを使用することである。ダイアログ・ボックスは、探索および置換フィールドと、他の編集オプションとを備える。画面の一部は、編修中のテキストの表示専用となっている。テキスト上では、ユーザによって行われる動作すべてが順次強調表示される。変換規則は、規則データベース(230)から取り出される(410)。ある規則が探索されると(テスト411にはいと回答)、ステップ410で取り出された現在の変換規則は、最初に受信された探索表現(400)に適用され(412)、最初に受信された置換表現(400)に適用される(413)。結果生じた探索および置換対は、初期探索表現について語形変化した形式と、初期置換表現について語形変化した形式とを備えてもよいように計算される。語形変化した形式を備えて「もよい」である理由は、言語の規則の中で、あるものは「変化なし」でありうるからである。「変化なし」を初期探索表現および初期置換表現(hello,bye)に適用すると、結果生じる対(hello,bye)を与える。この場合、結果生じる対は、語形変化した形式ではなく、エディタの基本の探索および置換機能と同様の初期表現を備える。
なお、連続して2つの規則を初期探索表現(412)および初期置換表現に適用する際に、結果生じる対は、第1のおよび第2の規則を探索表現および置換表現に独立して適用する際に取得されるカルテシアン積の対のすべてから形成されるのではない。逆に、以下の例でわかるように、派生対は、一方の規則に基づいて、他方の規則とは独立して計算される。明確にするために、一例として、一方がユーザによって提供された初期対(「hello」,「bye」)である場合に、規則「変化なし」を適用すると、1つの派生対(「hello」,「bye」)が取得され、規則「すべての文字を大文字にする」を適用すると、1つの派生対(「HELLO」,「BYE」)が取得される。2つの規則を混合した場合に初期対からカルテシアン積で取得される(「hello」,「BYE」)と(「HELLO」,「BYE」)という対は、好ましい実施の形態の本方法に従った派生対であるとはみなされない。
結果生じる探索および置換対は、探索および置換対データベース(240)に記憶される(414)。新たな変換規則が、規則データベースで取り出される(410)。更なる規則が探索されない場合には(テスト411にいいえと回答)、重複探索および置換対が探索および置換データベース(240)で取り出される(420)。ある対が他の対と重複したものといえるのは、その探索表現が同一の長さを有し、かつ文字ベースで比較した際に第1の対の探索表現と同一である場合に限り、これは、置換表現に関しても同様である。重複が見つかった場合には(テスト421にはいと回答)、重複対は探索および置換対データベースから削除される(422)。ステップ320は、これ以上重複が見つからない場合に(テスト421にいいえと回答)終了する(430)。このステップの終了時点では、探索および置換対データベース(240)は、ステップ310においてユーザが入力した元の探索および置換対と、規則データベース(230)において特定された変換規則とで生成される、できる限り多くの固有の探索および置換対を備える。フローチャート(430)の終了は、ステップ330の実行へ進むことを意味する。
同じ効果に対する異なる戦略を他の実施の形態が実施してもよい。これらには、既存の対を探索および置換対データベース、または重複削除前の探索置換対データベースのような種類のものに付加しないという、ステップ410に対する選択的な挿入が含まれるが、これに限定されるわけではない。
図5は、グラフィカル・ユーザ・インターフェースを使用する本発明の好ましい実施の形態を示すものである。画像は、本発明の実施の形態から得た実際の画像取り込みではないが、画像操作ツールを使用して構成されている。この画像上には、右部分に、ユーザとコンピュータとの間のダイアログが、ユーザによって入力された所定の探索および置換要求(find hello,replace hello world)についてコンピュータからユーザへ提供された置換の提案と共に表示されている。画像の左部分には、編集中のテキストが表示され、ユーザによって入力された所定の探索および置換要求(find hello,replace hello world)についてコンピュータからユーザへ提供された他の置換の提案が示されている。本例において、テキストは、Javaソース・コードであり、エディタは、Javaソース・コード・エディタである。
探索および置換ダイアログが、画像の右部分に示されている。これは、ユーザが探索表現を入力する入力領域(501)を備える。これは、図2の探索および置換領域(221)の一部と一致するものであり、他の部分が502として実施されている。また、テキスト(120)において同じく強調表示された現在の一致するもの、すなわち504を繰り返すことができるので、図3の探索および置換ダイアログを供給するステップ(343)における役割を果たしてもよい。
ユーザが置換表現を入力するために、現在の一致するものについての可能な派生のすべてを示すためのドロップ・ダウン・リストと共に、第2の入力領域が使用される。これは、探索および置換入力領域(221)の一部と一致するものであり、置換制御領域(222)の中核の機能を実施するものである。
図3および図4のフローチャートに記載されているように、ユーザが探索および置換表現を入力すると、コンピュータは、各規則を探索および置換表現に適用して、規則に従って、探索表現または置換表現あるいはその両方の可能な派生形式を探索する。探索および置換の計算された派生形式に対応する対応対が記憶される。その後、コンピュータは、記憶された対の探索部分のテキスト内で一致するものを探し、記憶された対の置換部分に従って、提案された置換部分と一致するものについて対を構築する。重複する探索および置換対は削除される。その後、コンピュータは、記憶された対の探索部分のテキスト内で一致するものを探し、一致するものを記憶する。その後、一致するものについてそれぞれ順に、一致する対の一致する探索表現および置換表現が、ダイアログの同一の探索および置換入力領域(501,502)を通じてユーザに提案される。
図5の画像の右部分に、ユーザは探索「hello」および置換「hello world」を入力しており、コンピュータは、2つの一致対を提案している。
‐規則「変化なし」に対応する(hello,hello world)
‐規則「2番目およびそれ以降の単語を大文字で始めて、白スペースを削除する」に対応する(hello,helloWorld)
‐規則「変化なし」に対応する(hello,hello world)
‐規則「2番目およびそれ以降の単語を大文字で始めて、白スペースを削除する」に対応する(hello,helloWorld)
ユーザは、置換領域(502)において、第1または第2の規則に従って一致するものに対する置換か、変化させずにそのままとするかを選択する機会を有する。画像において、「helloWorld」が強調表示されており、これは、第2の規則に従った一致するものに対する置換がユーザによって選ばれたことを意味する。
図5の画像の左部分は、編集中のJavaコードを示す。顧客によって入力された入力領域の同一の探索(hello)および置換(hello world)値に対応して、コンピュータは、規則「全単語を大文字で始めて、白スペースを削除する」に対応して、一致対(Hello,HelloWorld)(503)を提案している。
テキストにおいて、一致するもの(504)が灰色となっており、初期探索単語または表現との一致をユーザに対して示している。
画像の右部分に戻ると、ダイアログは、探索および置換ダイアログの他の従来のオプションを示している。「完全一致」チェック・ボックスをクリックすることによって、ユーザは、コンピュータが一致するもの504を提案することを除外してもよい。探索および置換の実施のこの機能は、本発明の好ましい実施の形態に特に固有なものではないが、既存の探索および置換技術との両立性の一例を与えるものである。
本発明の好ましい実施の形態において使用されるデータベース(規則230、探索および置換対240、一致するもの260)は、要素が比較的少なく、これらの要素は寿命が短い(典型的には、所定の探索および置換セッションが経過すると使用されないことになろう)。従って、本発明の実施の形態は、動作環境に対する他の制約および望ましい機能以外の要件(性能、メモリのフットプリントなど)によっては、メモリ内の一過性リストから、記録、そして完全に発達したデータベースの範囲のデータベースについての様々な実施を使用することができよう。
なお、「表現(expression)」および「語形変化した形式(inflected form)」の意味は、一般化できる。なぜならば、少なくとも1つの単語は1つの単語のみに対応していもよいと考えられるからである。同様に、規則によって許容される初期探索表現および初期置換表現の語形変化した形式は、規則が「変更なし」である場合は、同一の初期探索表現および初期置換表現でありうる。
Claims (14)
- テキストの探索および置換編集動作を行う方法であって、
ユーザによって提供された初期探索表現および初期置換表現を備える表現の対を前記ユーザから収集するステップと、
前記初期探索表現および前記初期置換表現の許容される語形変化した形式を規定する各規則について、前記規則を読み出し、前記規則を前記初期探索表現に適用し、および、前記規則を前記置換表現に適用するステップであって、これにより、前記初期探索表現の語形変化した形式と前記初期置換表現の語形変化した形式とで形成された派生対を取得する、ステップと、
先行ステップにおいて計算されたすべての派生対に係る探索表現について、前記テキスト内で一致するものを識別するステップと、
先行ステップにおいて識別された各一致するものについて、探索表現として前記一致する探索表現を有する各派生対に係る、前記一致する探索表現と前記置換表現とを、前記ユーザに提供するステップと
を含む、方法。 - 前記テキスト内で一致するものが識別された1つのみの派生対が前記ユーザに提供される度に、前記テキストにおいて、前記1つのみの派生対に係る置換表現で置換機能を実行するステップ
をさらに含む、請求項1に記載の方法。 - 前記テキスト内で一致するものが識別された2つ以上の派生対が前記ユーザに提供される度に、前記ユーザに対して提供された前記2つ以上の派生対のうち1つの派生対を前記ユーザから収集するステップと、
前記テキストにおいて前記ユーザから収集された前記1つの派生対に係る置換表現で置換機能を実行するステップと
をさらに含む、請求項1または2に記載の方法。 - 探索表現および置換表現の許容される語形変化した形式を規定する前記規則を第1の記憶手段に記憶する初期ステップをさらに含み、
前記規則を読み出す前記ステップは、前記規則を前記記憶手段から読み出すステップを含む、
請求項1から3のいずれか1項に記載の方法。 - 前記初期探索表現と前記初期置換表現とから派生したすべての派生対を第2の記憶手段に記憶するステップをさらに含み、
前記識別するステップは、前記派生対のすべてを前記第2の記憶手段から読み出すステップを含み、
探索表現として前記一致する探索表現を有する各派生対に係る、前記一致する探索表現と前記置換表現とを、前記ユーザに提供する前記ステップは、前記派生対を前記第2の記憶手段から読み出すステップを含む、
請求項1から4のいずれか1項に記載の方法。 - 前記一致するものを識別する前記ステップにおいて探索された前記テキスト内の前記一致するものすべてを第3の記憶手段に記憶するステップをさらに含み、
探索表現として前記一致する探索表現を有する各派生対に係る、前記一致する探索表現と前記置換表現とを、前記ユーザに提供する前記ステップは、前記一致する派生対を前記第3の記憶手段から読み出すステップを含む、
請求項1から5のいずれか1項に記載の方法。 - 第3の記憶手段に記憶する前記ステップは、
一致する前記探索表現の識別子が付加され、前記テキスト内の前記一致するものの場所と、一致する文字列の範囲とを備える、前記テキスト内の前記一致するものの指標を記憶するステップをさらに含む、請求項6に記載の方法。 - 前記ユーザから収集する前記ステップおよび前記ユーザに提供する前記ステップは、前記探索および置換編集動作が行われる前記テキストの部分を表示する領域を有するグラフィカル・ユーザ・インターフェースを通じて行われ、前記グラフィカル・ユーザ・インターフェースはさらに、前記探索表現を表示するフィールドと、前記置換表現を表示するフィールドとを有し、前記表現は共に前記ユーザによって入力されるかまたは前記ユーザに対して提供される、請求項1から7のいずれか1項に記載の方法。
- 前記ユーザから収集する前記ステップおよび前記ユーザに提供する前記ステップは、コマンドを含むプログラムの実行によって行われる、請求項1から7のいずれか1項に記載の方法。
- 前記ユーザに提供する前記ステップは、前記テキスト内で前記一致するものが識別された順で行われる、請求項1から9のいずれか1項に記載の方法。
- 前記ユーザに提供する前記ステップは、前記派生対内の異なる前記一致する探索表現の順で行われる、請求項1から9のいずれか1項に記載の方法。
- 前記規則を前記初期探索表現に適用する前記ステップ、および、前記規則を前記初期置換表現に適用する前記ステップは、重複する候補対を削除するステップをさらに含む、請求項1から11のいずれか1項に記載の方法。
- コンピュータ上で実施されると、請求項1から12のいずれか1項に記載の方法のステップを実行するプログラミング・コード命令を備えている、コンピュータ・プログラム製品。
- 請求項1から12のいずれか1項に記載の方法を実行するようになっている手段を備えている、システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP05301092 | 2005-12-22 | ||
PCT/EP2006/067867 WO2007071482A2 (en) | 2005-12-22 | 2006-10-27 | A method and system for editing text with a find and replace function leveraging derivations of the find and replace input |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009521026A true JP2009521026A (ja) | 2009-05-28 |
Family
ID=38057542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008546300A Pending JP2009521026A (ja) | 2005-12-22 | 2006-10-27 | 探索および置換入力の派生を活用する探索および置換機能でテキストを編集するための方法およびシステム |
Country Status (7)
Country | Link |
---|---|
US (2) | US10241987B2 (ja) |
EP (1) | EP1963995A2 (ja) |
JP (1) | JP2009521026A (ja) |
KR (1) | KR20080086456A (ja) |
CN (1) | CN101346716A (ja) |
CA (1) | CA2634388A1 (ja) |
WO (1) | WO2007071482A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10970474B2 (en) | 2005-12-22 | 2021-04-06 | International Business Machines Corporation | Method and system for editing text with a find and replace function leveraging derivations of the find and replace input |
WO2022259513A1 (ja) * | 2021-06-11 | 2022-12-15 | 日本電信電話株式会社 | 単語評価値取得方法、装置及びプログラム |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8010895B2 (en) * | 2007-10-24 | 2011-08-30 | E-Lead Electronic Co., Ltd. | Method for correcting typing errors according to character layout positions on a keyboard |
US8612853B2 (en) * | 2007-11-15 | 2013-12-17 | Harold W. Milton, Jr. | System for automatically inserting reference numerals in a patent application |
US20130007581A1 (en) * | 2011-06-30 | 2013-01-03 | Landon Ip, Inc. | Method and apparatus for editing composite documents |
CN102306186A (zh) * | 2011-08-29 | 2012-01-04 | 上海量明科技发展有限公司 | 进行文档遍历处理的方法及系统 |
JP5764039B2 (ja) * | 2011-10-25 | 2015-08-12 | 株式会社沖データ | 情報処理装置、画像形成装置、プログラム、情報処理システム、及び、情報処理方法 |
US9436664B2 (en) | 2012-05-31 | 2016-09-06 | Tata Consultancy Services Limited | Performing multiple scope based search and replace within a document |
US9251128B2 (en) | 2012-06-05 | 2016-02-02 | International Business Machines Corporation | Replacing a designated character string, or styling within the designated scope of tagged edited content in a document |
US9361293B2 (en) * | 2013-09-18 | 2016-06-07 | International Business Machines Corporation | Using renaming directives to bootstrap industry-specific knowledge and lexical resources |
US9710526B2 (en) | 2014-06-25 | 2017-07-18 | Microsoft Technology Licensing, Llc | Data set preview technology |
US10528645B2 (en) * | 2015-09-16 | 2020-01-07 | Amazon Technologies, Inc. | Content search using visual styles |
US10127212B1 (en) * | 2015-10-14 | 2018-11-13 | Google Llc | Correcting errors in copied text |
CN108121697B (zh) * | 2017-11-16 | 2022-02-25 | 北京百度网讯科技有限公司 | 一种文本改写的方法、装置、设备和计算机存储介质 |
US20190213249A1 (en) * | 2018-01-05 | 2019-07-11 | International Business Machines Corporation | Intelligent Copy and Paste |
US10387554B1 (en) * | 2018-02-19 | 2019-08-20 | International Business Machines Corporation | Applying matching data transformation information based on a user's editing of data within a document |
US10817264B1 (en) | 2019-12-09 | 2020-10-27 | Capital One Services, Llc | User interface for a source code editor |
US11604928B2 (en) * | 2020-04-30 | 2023-03-14 | International Business Machines Corporation | Efficiently managing predictive changes for a conversational agent |
CN112156460A (zh) * | 2020-09-24 | 2021-01-01 | 完美世界(北京)软件科技发展有限公司 | 一种游戏用户界面资源的处理方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6320677A (ja) * | 1986-07-15 | 1988-01-28 | Brother Ind Ltd | 文書編集装置 |
JPH05143591A (ja) * | 1991-11-18 | 1993-06-11 | Ricoh Co Ltd | 文書作成装置 |
JPH10269233A (ja) * | 1997-03-25 | 1998-10-09 | Hitachi Ltd | 文書データベースの検索結果表示方法及び装置 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5143591B2 (ja) | 1972-07-04 | 1976-11-22 | ||
US4420817A (en) * | 1979-05-25 | 1983-12-13 | Sharp Kabushiki Kaisha | Word endings inflection means for use with electronic translation device |
JPS61141078A (ja) * | 1984-12-13 | 1986-06-28 | Sharp Corp | 電子式仏単語辞書 |
JPH0821030B2 (ja) | 1986-12-29 | 1996-03-04 | ブラザー工業株式会社 | 文書処理装置 |
JPH03185561A (ja) | 1989-12-15 | 1991-08-13 | Ricoh Co Ltd | 欧文単語入力方法 |
NL9101286A (nl) * | 1991-07-23 | 1993-02-16 | Oce Nederland Bv | Werkwijze voor het verbuigen van woorden, alsmede een data-verwerkings-eenheid voor het uitvoeren van een dergelijke werkwijze. |
US5873660A (en) * | 1995-06-19 | 1999-02-23 | Microsoft Corporation | Morphological search and replace |
JPH09198398A (ja) | 1996-01-16 | 1997-07-31 | Fujitsu Ltd | パターン検索装置 |
US5999896A (en) * | 1996-06-25 | 1999-12-07 | Microsoft Corporation | Method and system for identifying and resolving commonly confused words in a natural language parser |
GB9713019D0 (en) * | 1997-06-20 | 1997-08-27 | Xerox Corp | Linguistic search system |
US6442576B1 (en) | 1997-08-06 | 2002-08-27 | Adobe Systems Incorporated | Searching for documents with multiple element types |
US6044387A (en) * | 1997-09-10 | 2000-03-28 | Microsoft Corporation | Single command editing of multiple files |
US6366910B1 (en) | 1998-12-07 | 2002-04-02 | Amazon.Com, Inc. | Method and system for generation of hierarchical search results |
TW388826B (en) * | 1998-12-21 | 2000-05-01 | Inventec Corp | Quickly word-identifying method |
US6601059B1 (en) | 1998-12-23 | 2003-07-29 | Microsoft Corporation | Computerized searching tool with spell checking |
US8205149B2 (en) * | 2001-01-05 | 2012-06-19 | Microsoft Corporation | Enhanced find and replace for electronic documents |
CA2447361A1 (en) | 2003-10-29 | 2005-04-29 | Adrian Storisteanu | Method for synchronization of a line-oriented text document and a stream-oriented text document |
US9021424B2 (en) | 2005-09-27 | 2015-04-28 | Sap Se | Multi-document editor with code inlining |
GB2433403B (en) | 2005-12-16 | 2009-06-24 | Emil Ltd | A text editing apparatus and method |
CN101346716A (zh) | 2005-12-22 | 2009-01-14 | 国际商业机器公司 | 通过利用查找和替换输入的派生的查找和替换功能来编辑文本的方法和系统 |
JP5143591B2 (ja) | 2008-03-03 | 2013-02-13 | 大阪瓦斯株式会社 | ガス検知装置及びガス検知方法 |
US7890516B2 (en) * | 2008-05-30 | 2011-02-15 | Microsoft Corporation | Recommending queries when searching against keywords |
-
2006
- 2006-10-27 CN CNA2006800489789A patent/CN101346716A/zh active Pending
- 2006-10-27 EP EP06807616A patent/EP1963995A2/en not_active Withdrawn
- 2006-10-27 US US12/097,758 patent/US10241987B2/en active Active
- 2006-10-27 JP JP2008546300A patent/JP2009521026A/ja active Pending
- 2006-10-27 WO PCT/EP2006/067867 patent/WO2007071482A2/en active Application Filing
- 2006-10-27 KR KR1020087014519A patent/KR20080086456A/ko active IP Right Grant
- 2006-10-27 CA CA002634388A patent/CA2634388A1/en not_active Abandoned
-
2019
- 2019-03-21 US US16/361,087 patent/US10970474B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6320677A (ja) * | 1986-07-15 | 1988-01-28 | Brother Ind Ltd | 文書編集装置 |
JPH05143591A (ja) * | 1991-11-18 | 1993-06-11 | Ricoh Co Ltd | 文書作成装置 |
JPH10269233A (ja) * | 1997-03-25 | 1998-10-09 | Hitachi Ltd | 文書データベースの検索結果表示方法及び装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10970474B2 (en) | 2005-12-22 | 2021-04-06 | International Business Machines Corporation | Method and system for editing text with a find and replace function leveraging derivations of the find and replace input |
WO2022259513A1 (ja) * | 2021-06-11 | 2022-12-15 | 日本電信電話株式会社 | 単語評価値取得方法、装置及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
EP1963995A2 (en) | 2008-09-03 |
US10970474B2 (en) | 2021-04-06 |
CN101346716A (zh) | 2009-01-14 |
KR20080086456A (ko) | 2008-09-25 |
US20080263443A1 (en) | 2008-10-23 |
CA2634388A1 (en) | 2007-06-28 |
WO2007071482A2 (en) | 2007-06-28 |
WO2007071482A3 (en) | 2007-12-13 |
US10241987B2 (en) | 2019-03-26 |
US20190220504A1 (en) | 2019-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009521026A (ja) | 探索および置換入力の派生を活用する探索および置換機能でテキストを編集するための方法およびシステム | |
JP4778434B2 (ja) | データベースクエリユーザインターフェース | |
US5555408A (en) | Knowledge based information retrieval system | |
US5341469A (en) | Structured text system | |
US8484238B2 (en) | Automatically generating regular expressions for relaxed matching of text patterns | |
Ko et al. | Barista: An implementation framework for enabling new tools, interaction techniques and views in code editors | |
JPH1078959A (ja) | エッジデータ構造を統一する方法 | |
US20100005058A1 (en) | Computer product, information retrieving apparatus, and information retrieving method | |
JP3372532B2 (ja) | 感情情報抽出方法および感情情報抽出プログラムの計算機読み取り可能な記録媒体 | |
US20090228865A1 (en) | Device for processing formally defined data | |
Stansifer et al. | Parsing reflective grammars | |
Beckmann et al. | Partial Parsing for Structured Editors | |
JP3632643B2 (ja) | 構造化文書管理装置 | |
CN112699642B (zh) | 复杂医疗文书的索引提取方法及装置、介质及电子设备 | |
CN114676155A (zh) | 代码提示信息的确定方法、数据集的确定方法及电子设备 | |
JP2009211599A (ja) | マッピング定義作成システムおよびマッピング定義作成プログラム | |
Robinson et al. | Logic programming in LISP | |
JP2004110609A (ja) | ファイル管理システム、ファイル管理プログラム、及び記録媒体 | |
WO2020180895A1 (en) | Methods and apparatus to improve disambiguation and interpretation in automated text analysis using structured language space and transducers applied on automatons | |
JP6753190B2 (ja) | 文書検索装置及びプログラム | |
JP5016333B2 (ja) | 文書作成支援装置及び文書作成支援プログラム | |
CN113609821B (zh) | 一种正则表达式转换方法、装置、设备及存储介质 | |
JP2005234800A (ja) | 用例機械翻訳装置及び用例翻訳コンピュータプログラム、並びに用例検索装置及び用例検索コンピュータプログラム | |
JP2005251092A (ja) | 情報検索システム、情報検索方法および情報検索プログラム | |
Vysoký et al. | INGRID: Creating Languages in MPS from ANTLR Grammars |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090217 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090821 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120131 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120626 |