一般的な正規表現

正規表現には多くのバージョンがあります。WaveLab Pro では、検索性能と使いやすさのバランスが取れた正規表現のバージョンを使用しています。

⁠式⁠という用語は、1 つの文字、文字クラス、または () か {} で囲まれた副式を示します。正規表現の検索では、大文字と小文字は区別されません。

正規表現ポップアップメニュー

メニュー項目

演算子

説明

すべての文字 (Any character)

.

すべての文字を表わします。

文字列 (指定範囲) (Character in range)

[ ]

角カッコで囲まれた文字列は、1 つの文字として扱われます。たとえば、[AEW13] は、A、E、W、1、3 のいずれかです。カッコ内のハイフンは、文字の範囲を示します。たとえば、[F-I] は F、G、H、I のいずれか、[A-Z0-9] はすべての文字とすべての数字にマッチします。

文字列 (指定範囲外) (Character not in range)

[^]

角カッコ内の先頭にあるカレットは、補足演算子です。この記号は、角カッコ内にある文字以外のすべての文字にマッチさせる場合に使用します。たとえば、[^E] は、E 以外のすべての文字を示します。

0 回/1 回にマッチ (なるべく 1 回) (0 or 1 match (1 if possible))

?

先行する式に 0 回または 1 回マッチします。可能であれば 1 回マッチし、さらに続けて正規表現の残り部分が評価されます。

0 回/1 回にマッチ (なるべく 0 回) (0 or 1 match (0 if possible))

??

先行する式に 0 回または 1 回マッチします。可能であれば 0 回マッチします (正規表現の次のステップも評価され、優先されます)。

0 回以上にマッチ (なるべく多く) (0 or more matches (as many as possible))

*

先行する式に 0 回以上マッチします。なるべく多くの回数繰り返しマッチし、さらに続けて正規表現の残り部分が評価されます。

0 回以上にマッチ (なるべく少なく) (0 or more matches (as few as possible))

*?

先行する式に 0 回以上マッチします。なるべく少ない回数繰り返しマッチします (正規表現の次のステップも評価され、優先されます)。

1 回以上にマッチ (なるべく多く) (1 or more matches (as many as possible))

+

先行する式に 1 回以上マッチします。なるべく多くの回数繰り返しマッチし、さらに続けて正規表現の残り部分が評価されます。

1 回以上にマッチ (なるべく少なく) (1 or more matches (as few as possible))

+?

先行する式に 1 回以上マッチします。なるべく少ない回数繰り返しマッチします (正規表現の次のステップも評価され、優先されます)。

OR

|

OR 演算子。2 つの式を分けて最初の式または 2 つめの式のいずれかとマッチさせたい場合に使用します。たとえば、「Piano|Drum」は、「Piano」または「Drum」を含むすべての文字列とマッチします。

NOT

!

否定演算子。「!」のあとの式が文字列にマッチしてはいけません。たとえば、「a!b」は、あとに⁠b⁠が来ていないすべての⁠a⁠にマッチします。

グループ (Generic group)

()

グループ演算子。副式を作成する場合に便利です。

取り込み (Capture)

{}

取り込み演算子。初期設定では、見つかったテキストは正規表現全体に対応します。これに対し、正規表現の一部を { } で限定し、正規表現の一部がマッチしたら、そのマッチ部分が保持されるようにできます。たとえば、⁠「abcdef」⁠に対して正規表現⁠「ab{cd}ef」⁠を適用すると、⁠「cd」⁠が返されます。

テキストの始め (Beginning of text)

^

検索する文字列が、参照された文字列の始めになければならないと指定する場合に使用します。参照された文字列の始めにない場合、マッチしても無視されます。

テキストの終わり (End of text)

$

検索する文字列が、文字列の終わりになければならないと指定する場合に使用します。参照された文字列の終わりにない場合、マッチしても無視されます。

「特殊文字 (Special Characters)」サブメニュー

このサブメニューでは、正規表現のすべての特殊文字を使用できます。

「ショートカット (Shortcuts)」サブメニュー

メニュー項目

演算子

説明

数字 (0-9) (Any digit (0-9))

/d

すべての数字を表わします。[0-9] と同じです。

数字以外 (0-9以外) (Any non-digit (not 0-9))

/d

数字以外のすべての文字を表わします。[^0-9] と同じです。

英字 (a-z/A-Z) (Any letter (a-z or A-Z))

/l

すべての英字を表わします。[a-z] と同じです。

英字以外 (a-z/A-Z 以外) (Any non-letter (not a-z, not A-Z))

/l

英字以外のすべての文字を表わします。[^a-z] と同じです。

英数字 (a-z/A-Z/0-9) (Any alphabetic (a-z or A-Z or 0-9))

/w

すべての英数字を表わします。[0-9a-z] と同じです。

英数字以外 (a-z/A-Z/0-9 以外) (Any non-alphabetic (not a-z, not A-Z, not 0-9))

/w

英数字以外のすべての文字を表わします。[^0-9a-z] と同じです。

Number

/u

(符号なしの) 数値を表わします。

数値 (+/- も可) (Number (with possible +- before))

/i

数値を表わします。前に「+」記号または「-」記号が付いた数値も対象になります。

引用文字列 (Quoted string)

/q

引用文字列を表わします。

単語 (Simple word)

/z

単語 (スペースなどの文字以外の記号によって囲まれた文字列) を表わします。

「プリセット (Presets)」サブメニュー

メニュー項目

演算子

説明

最初の単語 (1st Word)

/z

(スペースで区切られた) 最初の単語を検索します。

2 つ目の単語 (2nd Word)

/z/L+{/z}

(スペースで区切られた) 2 つめの単語を検索します。

3 つ目の単語 (3rd Word)

/z/L+/z/L+{/z}

(スペースで区切られた) 3 つめの単語を検索します。

最後の単語 (Last word)

{/z}/L*$

(スペースで区切られた) 最後の単語を検索します。

(丸カッコ内) 1 つ目の文字列 (1st Expression in Parentheses)

.*?{/(.*?/)}

丸カッコで囲まれた最初の文字列を検索します。

(丸カッコ内) 2 つ目の文字列 (2nd Expression in Parentheses)

.*?/(.*?{/(.*?/)}

丸カッコで囲まれた 2 つめの文字列を検索します。

(丸カッコ内) 3 つ目の文字列 (3rd Expression in Parentheses)

.*?/(.*?/(.*?{/(.*?/)}

丸カッコで囲まれた 3 つめの文字列を検索します。

(丸カッコ内) 最後の文字列 (Last expression in parentheses)

.*{/(.*?/)}.*$

丸カッコで囲まれた最後の文字列を検索します。

[角/かぎカッコ内] 1 つ目の文字列 (1st Expression in Brackets)

.*?{/[.*?/]}

角/かぎカッコで囲まれた最初の文字列を検索します。

[角/かぎカッコ内] 2 つ目の文字列 (2nd Expression in Brackets)

.*?/[.*?{/[.*?/]}

角/かぎカッコで囲まれた 2 つめの文字列を検索します。

[角/かぎカッコ内] 3 つ目の文字列 (3rd Expression in Brackets)

.*?/[.*?/[.*?{/[.*?/]}

角/かぎカッコで囲まれた 3 つめの文字列を検索します。

[角/かぎカッコ内] 最後の文字列 (Last Expression in Brackets)

.*{/[.*?/]}.*$

角/かぎカッコで囲まれた最後の文字列を検索します。