***********************************
                             Inufo-Mac   version 1.0
                                     REGEXP

                           Copyright (C) 1998 Dai Sato
                        <satodai@dog.intcul.tohoku.ac.jp>
                       ***********************************

### Inufo-Mac の正規表現について ###

Inufo-Mac での正規表現の使い方について、簡単に説明しておきます。これは「hogeか hoe って名前だったけど、どっちだったかな?」とか「名前の最初と最後は覚えてるけど真中が分からない」なんて時に便利です。

細かく説明すると切りがないので、使用頻度が高そうな物だけを説明します。

hoge か hoe って単語が入ってたんだけど。。。

これは "|" という記号 (or みたいな意味) を使います。キーワードとして

hoge|hoe

を指定すれば(正規表現としては)良いのです。ただしここでは検索ソフトの都合で "|" はそのままでは使えません。\ で escape する必要があります。つまり直前に "\" を置き "|"の代わりに "\|" と書く事になります。したがってこの検索のキーワードとしては

hoge\|hoe

を指定することになります。

名前が断片的にしか分からない

この場合は「最初の方と最後の方を指定して真中は任意の文字列」という表現を使います。任意の文字列という表現には2つの記号を使います。"." と "*" です。"." は「任意の1文字」という意味の記号で、"*" は「直前の文字の任意回の繰り返し」を表します。したがって、".*" と書くと「任意の文字の任意回の繰り返し」という意味になります。 そこで「hoge で始まって hoe で終る文字列」を指定するには

hoge.*hoe

と書く事になります。これは "\" で escape する必要はありません。

複雑な検索

これらの表現を組み合わせて、もっと複雑な正規表現を書く事も出来ます。例えば「hog e で始まって、後ろの方に hoe か poe がある」という条件は、次の様に表現できます。

hoge.*(hoe|poe)

このページの info-mac の検索では (, ), | にそれぞれ escape が必要なので、結果的に次のようなキーワードを入力すればこの条件で検索できます。

hoge.*\(hoe\|poe\)

なお "|" の前後がそれぞれ1文字の場合は、"[]" という記号も使えます。"A" または "B" という風に書きたければ、[AB] と書けば良いのです。"[]" は「カッコの中のどれか1文字」という意味の記号なので、別の使い方もできます。

例えば [0123456789] と書くと数字のどれか1文字という意味になります。連続した文字 (正確には文字コード) の場合には "-" (ハイフン) を使って、[0-9] という書き方も出来ます。 これも数字のどれか1文字という意味になります。


御意見御感想はけいじわんまでどうぞ。
<satodai@dog.intcul.tohoku.ac.jp>