1-3 使用可能な正規表現

 

1-3-1 正規表現のルール

正規表現はリテラルではなくパターンを探索するために使用することができます。

例えば、CRSファイルで$定数を検索するには"\$\([A-Z]+\)"と記述できます。

 

1. 下記の文字(メタキャラクタ)以外の文字はそれ自体と一致します。

\ [ ] * + ^ $ 

 

2. "."はすべての文字に一致します

 

3. "\"は、続く文字が"("")""[""]"、数字以外はその文字と一致します。(下記789を参照)

続く文字がメタキャラクタ場合のエスケープキャラクタとして働きます。("\*"など)

"\"自体を文字として扱うときにも使用されます。文字セット(下記4を参照)の中で使用されたときは通常の文字として扱われます。

 

4. "[]"で括った文字セットは、文字セットの中の文字のうちの1つと一致します。

文字セット中の一文字目が"^"である場合、それは文字セットが否定条件であることを示します。

文字セットで"]""-"が一番初めに現れる場合は特別の意味を持ちます。例えば、"[-z]"は任意の小文字のアルファベットに一致し、"[^]-]""]"以外のすべての文字、"[^A-Z]"は大文字のアルファベット以外の任意の文字、"[-zA-Z]"は任意のアルファベットに一致します。

 

5. "*"は直前の上記14の正規表現の、0回以上の繰り返しに一致します。

 

6. "+"は直前の上記14の正規表現の、1回以上の繰り返しに一致します。

 

7. 110の正規表現書式を"("")"で括って1つのパターンを生成できます。(\でエスケープするのはその文字自体と区別するため)

パターン番号は1からスタートして、"()"順に9まで付けられます。このパターンはパターン代用のために使用できます。(下記8を参照)

 

8. "\"に数字19が続く場合、パターン番号に一致する正規表現(上記7を参照)に一致します。

 

9. "<"は単語の開始を、">"は単語の終了を意味します。ここで言う単語とは[a-zA-Z0-9_]で始まり、終わる文字列を意味します。

 

10. "^"が正規表現の初めにある場合は行頭に一致します。また正規表現の最後に"$"がある場合行末に一致します。パターンのそれ以外の場所にこれらの文字があっても通常の文字として扱われます。

 

1-3-2 正規表現の例

 

正規表現:foo*.*

一致例 = fo foo fooo foobar fobar foxx ...

 

正規表現:fo[ob]a[rz]

一致例 = fobar fooar fobaz fooaz

 

正規表現:foo¥¥+

一致例 = foo foo¥¥ foo¥¥¥ ...

 

正規表現:¥(foo)[1-3]1( foo[1-3]fooと同)

一致例 = foo1foo foo2foo foo3foo

 

正規表現:¥(fo.*)-1

一致例 = foo-foo fo-fo fob-fob foobar-foobar ...

 

正規表現:¥<[a-z]*>

一致例 = すべての英単語

 



「オンラインマニュアル」一覧へ戻る
「Bizの宝箱」TOPへ戻る