#etext-ut 電子化テキストの利用方法
  暫定版 - Now under construction! (1999.1.25)

1. 文字検索
1.1 文字検索の概要
1.2 代表的ソフトによる検索
1.3 多様な検索方法
1.4 正規表現による検索
      grepによる検索の具体例 / タグジャンプによる参照
1.5 正規表現が使える検索ツール
目的 : 1. 文字検索
     2. 並べ替え
     3. KWIC
     4. 一括処理
ソフト: a. ワープロ・エディタ
     b. 表計算・データベース
     c. 専用ツール

1.1 文字検索の概要
――――――――――

 文字検索とは、その名の通り、ファイルの中から求める文字および文字の連続(文字列)を探し出すことです。検索機能はさまざまな場面で必要となりますが、検索対象となるデータのスタイルをある程度知っていないと、検索漏れが生ずることがありますので、注意が必要です。

検索対象検索語検索結果
(該当部分を赤字で示す)
うさぎ うさぎ
なに見て はねる
十五夜 お月さま
見て はねる
うさぎ うさぎ うさぎ なに見て はねる
十五夜 お月さま 見て はねる
うさぎ うさぎ なに見て はねる
十五夜 おさま 見て はねる
つき うさぎ うさぎ なに見て はねる
十五夜 お月さま 見て はねる
(該当語なし)

1.2 代表的ソフトにおける検索
―――――――――――――――

 「(文字)検索」と名のつく機能でしたら、たいていのワープロソフトやワープロ専用機でも付属しているかと思います。HTML形式のファイルでしたら、Netscape Navigator や MS Internet Explorer などのWWWブラウザの検索機能も使えます。また、新潮文庫のCD-ROMに付属の Expand Book Browser や、そのほかの市販のデータに付属するソフト(プログラム)にも備わっていることが多いようです。

1. ワープロソフト

 ワープロソフトの検索機能は、一般的な文書によく見られる表記のゆれ等を考慮したものが多く見られます。また、それぞれのワープロソフト固有の文書に限定されるようですが、ルビや文字装飾等の機能も含めて検索できるなどの特色を持っていることがあります。

  1. 一太郎(Ver.8以降)の場合 →詳細説明へ
    「編集」メニューから「検索」―「検索/絞込」を選択します。そして、検索文字列を指定して、[検索]ボタンをクリックします。
    OR検索、任意の1文字、ルビ、改行、タブ等も検索可能です。

  2. Microsoft Word(95=Ver.7以降)の場合 →詳細説明へ
    「編集」メニューから「検索」を選択します。そして、「検索する文字列」を指定して、[次を検索]ボタンをクリックします。
    あいまい検索、書式、特殊文字(タブや任意の1文字など)等も検索可能です。また、正規表現に似たパターンマッチングによる検索も可能です。

2. WWWブラウザ

 アルファベットの大文字・小文字の区別を問わない検索が可能です。また、検索方向(下・上)を指定することもできます。

  1. Netscape Navigatorの場合(Communicatorも同等)
    ツールバーの[検索(Find)]をクリックして(または「編集」メニューの中から「検索」を選んで)、検索したい文字を指定します。

  2. Internet Explorerの場合
    「編集」メニューの中から「このページの検索」を選んで検索文字を指定します。
3. エディタ
  1. 秀丸エディタの場合 →詳細説明へ
    「検索」メニューの中から「検索」を選んで(または、Ctrl+F)検索文字を指定し、「下検索」ボタン、または「上検索」ボタンをクリックします。
    あいまい検索、単語検索、正規表現 検索方法として、基本、曖昧、単語、正規の4種類が選択できます。また、「ツール」メニューの中の「ソート」により、簡単なソートが可能。

  2. WZエディタの場合 →詳細説明へ
    「検索」メニューの中から「検索」を選んで検索文字を指定し、「OK」ボタンをクリックします。
    検索方法として、基本、曖昧、単語、正規の4種類が選択できます。
    「ツール」メニューの中の「ソート」により、簡単なソートも可能です。

4. そのほか

  1. Microsoft Excelの場合
    「編集」メニューから「検索」を選択します。そして、「検索する文字列」を指定して、[次を検索]ボタンをクリックします。
    通常の状態では、大文字と小文字を区別する検索、半角と全角を区別する検索、項目内容が完全に一致するものの検索、およびそれらを組み合わせた検索が可能です。さらに、VBモジュールが開かれている状態では、単語の検索、および正規表現に似たパターンマッチングによる検索が可能になります。

  2. Expand Book Browserの場合
    「ブック」メニューの中から「検索」を選び、検索文字を入力して[検索]ボタンを押します。

1.3 多様な検索方法
――――――――――

 「(文字)検索」の機能は、ソフトやワープロの機種等によって多少の違いはありますが、探し出したい文字そのものを指定して検索する点においてはどれも差はないと思います。一番単純なのは、検索したい文字そのものだけを検索するものです。
 しかし、指定した文字だけを検索するのでは求めるすべてを拾い出してくれない可能性があります。たとえば、「長島」と指定した場合に「長嶋」は該当しないことになります。また、「バイオリン」の指定では「ヴァイオリン」は検索されないこととなります。前者は異体字の関係にあるもの、後者は表記のゆれと呼ばれるものですが、実際の文字表記にはこの他にもさまざまなバリエーションがあり、それらを考慮しなければ検索結果に(重大な)漏れが生じることにもなりかねません(検索においては、重複よりも脱漏の方が問題となります)。
 そのため、各種のソフトや機種の検索機能には、さまざまな許容を考慮した機能が付加されています。許容する対象の代表的なものには次のようなものがあります。

許容の対象具体例
アルファベットの大文字・小文字A⇔a
全角文字・半角文字A⇔A ア⇔(半角のア *) 1⇔1
ひらがな・カタカナあ⇔ア
かな小字・大字(拗音、促音)ぁ⇔あ ゃ⇔や ゎ⇔わ
異体字一⇔壱 峰⇔峯
かなの旧字・新字ゐ⇔い ヱ⇔え
四つ仮名じ⇔ぢ ず⇔づ
セ・シェ/セ・ジェスチャー⇔ジェスチュア
ツィ・ティ・チ/ディ・ジ などディーゼル⇔ーゼル
バ・ヴァ/ハ・ファ などセロン⇔セロファ
イ、エ段の前のア・ヤダイスト⇔ダイ
サ行の前のキ・クスト⇔テスト
繰り返し符号ヽ⇔ヾ⇔ゝ⇔ゞ⇔々
長音・マイナス・ダッシュー⇔−⇔-
長音の有無コンピュータ⇔コンピュータ

*HTMLファイルでは半角カタカナは使わない原則ですので、フォントサイズを小さくして代用しています。

このほか、空白の有無を問わない検索、区切り符号(.−_・/など)を無視する検索などもあります。また、英語の場合には、英語・米語による表記のゆれ(centreとcenterなど)や活用形を含む検索が可能です。なお、検索で指定する文字列はソフトにもよりますが、一般的には50字前後、多いものでも256文字程度までかと思われます(あまり長い検索語を指定するすることはないでしょうが :-))。

 以上のようにさまざまな検索方法が用意されており、一般的な用途に対してはほとんど問題ない程度といえるでしょう。しかし、もう少し自由な検索をしたいという場合には上記の機能でも不足が生じます。それは、英語における検索と比較した場合、端的にうかがうことができます。
 例えば、動詞の活用形の検索については、英語では、活用形を含む検索を指定して「go」を検索すれば、go - went - gone などを区別せずに拾い上げることができます。一方、日本語においては今のところこの機能はないようです。具体的には、「ワラウ(笑う)」という動詞を検索したいという時に、「ワラウ」とだけ指定していたのでは、「ワライ」「ワラエ」等の活用形はすぐには検索できません。現状では、これらを探し出すためには、それぞれ「ワライ」「ワラエ」等を指定しなければなりません。活用形のように種類が少なければ、それぞれを指定してもさほど手間とは感じないかもしれませんが、これが接頭語や終助詞などになるとたいへんな手間になります
 また、近年増えて来ているものとして、いわゆる逆引きの辞書(逆引き広辞苑 等)があります。CD-ROM版の辞書に添付されているソフトでは「後方一致」と呼ばれているもので実現される機能です。これにより自由な検索が可能になりましたが、欲をいえば「前方一致」と「後方一致」を両方同時に使えるとより一層便利になります。例えば、語の頭とお尻がわかっている語や、特定の語と語の結び付きを調べる場合などです。

1.4 正規表現による検索
――――――――――――

 目的とする文字列がまったくの1種類であれば別ですが、さまざまなパターンを含む対象を検索したい時に使えると便利なのが「正規表現」というものです。これは、ワイルドカード( * や ? など)と同じ構造のもので、ある特定の書式を指定すれば、それに該当するすべての文字が検索できるというものです。先に挙げた「ワラウ」のすべての活用形を検索するためには、'ワラ[ワイウエオッ]' と指定すればよく、複数の対象をまとめて検索する場合も"|"を使えば一括して検索してくれます。また、前方一致と後方一致を組み合わせた検索方法としては、'あい.*[うくぐすずつぬむる]'(「あい」で始まる動詞を検索)とします。最近では、Microsoft Word などでも使えるようになってきていますが、指定の仕方が標準的なものではなく、またいくらかの制限もあります。また、それぞれのソフトによって異なるようなので、慣れないとかえって面倒になるようです。むしろ、専用の検索ソフト( 〜 GREP *1(グレップ)という名前が多い)を使った方が早く、確実です。
 ただし、正規表現による検索であっても、検索しようとするデータの構造を把握していないと、思わぬ検索漏れが生ずる恐れがありますので、よく確かめてから検索を実行した方がよいでしょう。

1) grepによる検索の具体例

以下に示す「しゃぼん玉」(野口雨情(-1945)作詞)をもとにいくつか紹介します。行番号(01〜12)は仮につけたものです。
01 しゃぼん玉 とんだ
02 屋根までとんだ
03 屋根までとんで
04 こわれて消えた
05 
06 しゃぼん玉 消えた
07 飛ばずに消えた
08 うまれてすぐに
09 こわれて消えた
10
11 風 風 吹くな
12 しゃぼん玉 とばそ
  1. 動詞「とぶ(飛)」を検索
    指定:
    '[と飛][ばびぶべぼん]'
    意味:
    代表的な漢字表記とかな表記に対応。とば、とび、とぶ、とべ、とぼ、とん、飛ば、飛び、飛ぶ、飛べ、飛ぼ、飛ん の計12種類をOR検索するのと同じ。
    結果:
    01 しゃぼん玉 とん
    02 屋根までとん
    03 屋根までとん
    07 飛ばずに消えた
    12 しゃぼん玉 とば

  2. 接続助詞「て」を検索
    指定:
    '[いうえきけげしじせぜってでにねみめりれ]て|[いん]で'
    意味:
    「て(で)」を検索するために、「いうえきけげしじせぜってでにねみめりれ」に続く「て」、「いん」に続く「で」を指定。ただし、前接する仮名にもマッチ。また、すべての可能性を網羅する一方で、接続助詞以外のものにも該当する恐れがあるが、その場合は個別に処理する。
    結果:
    03 屋根までと
    04 こわ消えた
    08 うますぐに
    09 こわ消えた

  3. すべての漢字を検索
    指定:
    '[亜-熙]'
    意味:
    文字コードにおける漢字の最初の文字(亜)と最後の文字(熙)と、両者にはさまれたすべての文字、つまりはすべての漢字を指定。
    結果:
    01 しゃぼん とんだ
    02 屋根までとんだ
    03 屋根までとんで
    04 こわれてえた
    06 しゃぼん玉 消えた
    07 ばずにえた
    09 こわれてえた
    11 風 風 吹くな
    12 しゃぼん とばそ

ご覧のように、grepは基本的に行単位で処理を行います。該当する箇所のみを示すことは別の方法をとることになります。また、この画面に示したような、該当する部分にマークを付すことは、ソフトの機能に依存します。

2) タグジャンプによる参照

 GREPによる検索結果には、元のファイルにおける所在(タグ)を付すことができます。そして、これを利用して元のファイルを参照すること(タグジャンプ)により、検索結果だけでは文脈等がはっきりしない場合も、簡単に確かめることが可能です。タグジャンプは、正規表現が扱えるエディタであれば、たいてい持っている機能です。
 具体的な手順は次の通りです(例は上記の「しゃぼん玉」が shabon.txtという名前で保存されているとします)。

  1. 最初に、shabon.txtから「しゃぼん玉」をタグ付きで検索します(結果は仮に key.txtというファイルに保存したとします)。
    検索結果
    (key.txt)
     shabon.txt 1: しゃぼん玉 とんだ
     shabon.txt 6: しゃぼん玉 消えた
     shabon.txt 12: しゃぼん玉 とばそ
    
    タグはファイル名と行番号からなります。行番号が括弧()で括られる場合もあります。

  2. 検索結果(key.txt)をエディタに読み込みます(エディタ上で検索した場合は自動的に読み込まれている場合もあります)。
    key.txt
    shabon.txt 1: しゃぼん玉 とんだ
    shabon.txt 6: しゃぼん玉 消えた
    shabon.txt 12: しゃぼん玉 とばそ
    

  3. 検索結果で元のファイルを参照したい行にカーソルを併せ、タグジャンプキー(ソフトの種類によって異なります *)を押します。
    key.txt
    shabon.txt 1: しゃぼん玉 とんだ
    shabon.txt 6: しゃぼん玉 消えた
    shabon.txt 12: しゃぼん玉 とばそ
    

  4. 元のファイル(shabon.txt)が自動的に開かれ、該当の行にカーソルが自動的に移動します。
    key.txt ≫ shabon.txt
    shabon.txt 1: しゃぼん玉 とんだ
    shabon.txt 6: しゃぼん玉 消えた
    shabon.txt 12: しゃぼん玉 とばそ
    しゃぼん玉 とんだ
    屋根までとんだ
    屋根までとんで
    こわれて消えた
    
    しゃぼん玉 消えた
    飛ばずに消えた
    うまれてすぐに
    こわれて消えた
    
    風 風 吹くな
    しゃぼん玉 とばそ
    
* VZエディタでは[Shift]+[F10]、MIFESでは、WZエディタでは[Shift]+[Ctrl]+G、秀丸エディタでは[F10]になります(いずれも初期値)。

1.5 正規表現が使える検索ツール
――――――――――――――――

代表的な検索ツールには、以下のものがあります。→詳細説明へ

 また、エディタの中には正規表現による検索が可能なものがあります。特に、開いているファイルだけでなく、あるフォルダ(ディレクトリ)中にあるテキストファイルの中身も検索できるものであれば、一層便利です。

ワープロソフトでは、Microsoft Word(Word95以降)が正規表現相当の検索が可能ですが、一太郎(Ver.9)はまだ出来ないようです。他のソフトについては不明です。ご存知のかたがいらっしゃいましたら、お教えください。

 *1
GREPとは、もとはUNIX上で開発された文字列検索用のツールです。GREPは、Grobal Regular Expression Printの略。

参考文献


Back #HOMEホームページへ戻る