Vz resources : Regular Expression

耳より正規表現入門

VZユーザーのための,VWXによる正規表現利用のてびき
初出:nifty:FGALDC/MES/13/09142〜 (2002/06/18〜2002/07/21)

第3回 正規表現の演算子〜メタキャラクタ

正規表現の式に使われる特別な意味を持つ文字を総称して「メタキャラクタ」と言います。キャラクタとは文字ですから「メタ文字」と言っても同じです。とにかくこれをまったく知らないと「並び」しか使えませんから,少しずつ覚えていきましょう。算数でも『+』や『−』,『×』,『÷』。ひとつずつ演算子を覚えたわけですよね。

他に用語として,「パターン」とか「マッチ」などありますけれど,今は「パターン」はひとまとまりの正規表現文字列,「マッチ」は一致するとか当てはまるという雰囲気で考えていただければ結構です。

次がVWXで意味をもつメタキャラクタの一覧です。
 (優先順位の高い順に並べたつもりですが,正確でないかもしれません(^^;

\
メタキャラクタとしての意味を打ち消す場合に前置するメタキャラクタです。
例えば,『\.』は『.』そのもの,自身の意味を打ち消す場合は『\\』で『\』そのものを意味します。
また,通常の文字をメタキャラクタとする場合に使用されることもあります。
例えば,『\s』 はスペース,『\t』 はタブを意味することになっています。
.
改行を除いた任意の1文字にマッチします。

【繰り返し指定】

*
直前の正規表現の0回以上の繰り返しにマッチします。
+
直前の正規表現の1回以上の繰り返しにマッチします。
?
直前の正規表現の0回または1回にマッチします。

【並び指定】

abc
任意の文字の並びにマッチします。(1文字ならひとつの並び?です)

【位置指定】

^
パターンの先頭に存在するときは,行の先頭にマッチします。
[ ]内の先頭に存在する時は,[ ]内に含まれない任意の1文字にマッチします。
$
パターンの最後に存在するときのみ、行の末尾にマッチします。

【文字クラス指定】

[...]
[ ]内に含まれる任意の1文字にマッチします。
[A-Za-z][亜-龠] のような範囲指定も可能です。
[^...]
[ ]内の先頭に^を入れると,含まれない文字にマッチします。

【選択指定】

a|b
or演算子:左辺あるいは右辺の正規表現にマッチします。
a&b
and演算子:左辺かつ右辺の正規表現にマッチします。

所謂【タグつき正規表現】

\( \)
括弧内の正規表現を出現順に最大9個まで記憶します。(タグ付き正規表現)
\N
タグ付き正規表現により記憶したN番目の文字列を示します。Nは1〜9の整数。

次回からは,実践編に入ります。…と言っても,以上のメタキャラクタの使い方の説明なんですけどね。でも,できるだけ身近な具体例で説明しますので,一通りの説明が終わったら基本的な正規表現のパターンは日常的に使えるようになるはずです。


The VZ resources. ©2002 by mezala. mailto:mezala@nifty.com