正規表現
IDE のリファレンスとユーティリティ への移動
正規表現は、特定の文字(記号)に特別な意味がある検索文字列です。RAD Studio では、正規表現の以下の記号を認識できます。
文字 | 説明 |
---|---|
^ | 文字列の先頭の曲折アクセント記号(^)は行頭に一致します。 |
$ | 表現の末尾のドル記号は行末に一致します。 |
. | ピリオドは任意の 1 文字に一致します。たとえば、b.t は bot にも bat にも一致しますが、boat には一致しません。 |
? | 文字または文字グループの後に疑問符がある場合は、その文字または文字グループが 0 個か 1 個あるものに一致します。たとえば、bo?t は bt にも bot にも一致します。 |
* | 文字または文字グループの後にアスタリスクがある場合は、その文字または文字グループが任意の数(ゼロ個を含む)出現するものに一致します。たとえば、bo*t は bt、bot、boot に一致します。 |
+ | 文字または文字グループの後にプラス記号がある場合は、その文字または文字グループが任意の数(1 個以上)出現するものに一致します。たとえば、bo+t は bot にも boot にも一致しますが、bt には一致しません。 |
| | 縦棒は、縦棒の両側にある各表現に一致します。たとえば、bar|car は bar か car のどちらかに一致します。 |
[ ] | 複数の文字を角かっこで囲むと、そのかっこ内のいずれかの 1 文字にのみ一致します。たとえば、[bot] は b、o、t のいずれかに一致します。 |
[^] | 角かっこ内の文字列の先頭に曲折アクセント記号がある場合は、否定を意味します。したがって、[^bot] は、b、o、t 以外の任意の文字に一致します。 |
[-] | 角かっこ内のハイフンは、文字の範囲を示します。たとえば、[b-o] は b から o までの任意の 1 文字に一致します。 |
{ } | 複数の文字または表現を中かっこで囲むと、それらはグループになります。グループはネストが可能で、1 組のパターンで最大 10 グループまでネストできます。置換操作の場合は、[検索文字列]表現内の位置に応じて、バックスラッシュと数字でグループが参照されます。数字は 0 で始まります。たとえば、[検索文字列]を {[0-9]}{[a-c]*}、[置換文字列]を NUM\1 と指定すると、文字列 3abcabc は NUMabcabc に変更されます。 |
( ) | かっこは中かっこ({ })の代わりとなるもので、動作は同じです。 |
\ | ワイルドカード文字の前にバックスラッシュ(日本語環境では \)があると、コード エディタでは、その文字をワイルドカードではなくそのままの文字として扱います。たとえば \^ は ^ という文字に一致し、行頭は検索されません。 |
BRIEF 正規表現を有効にした場合は、上記表の記号ではなく、BRIEF 正規表現記号を正規表現で使用できます。BRIEF 正規表現を有効にするには、[ツール|オプション...|エディタ設定]を選択し、[BRIEF 型正規検索表現]オプションをオンにします。以下の BRIEF 記号を使用できます。
文字 | 説明 |
---|---|
^ | 文字列の先頭の曲折アクセント記号(^)は行頭に一致します。 |
< | 文字列の先頭の小なり記号は行頭に一致します。 |
% | 文字列の先頭のパーセント記号は行頭に一致します。 |
$ | 表現の末尾の大なり記号は行末に一致します。 |
> | 表現の末尾の大なり記号は行末に一致します。 |
? | 疑問符は任意の 1 文字と一致します。「.」(ピリオド)を参照。 |
@ | 文字または文字グループの後にアットマークがある場合は、その文字または文字グループが任意の数(ゼロ個を含む)出現するものに一致します。たとえば、bo@t は bt、bot、boot に一致します。 |
* | 文字または文字グループの後にアスタリスクがある場合は、その文字または文字グループが任意の数(1 個以上)出現するものに一致します。たとえば、bo*t は bot にも boot にも一致しますが、bt には一致しません。 |
+ | 文字または文字グループの後にプラス記号がある場合は、その文字または文字グループが任意の数(1 個以上)出現するものに一致します。たとえば、bo+t は bot にも boot にも一致しますが、bt には一致しません。 |
| | 縦棒は、縦棒の両側にある各表現に一致します。たとえば、bar|car は bar か car のどちらかに一致します。 |
[ ] | 複数の文字を角かっこで囲むと、そのかっこ内のいずれかの 1 文字にのみ一致します。たとえば、[bot] は b、o、t のいずれかに一致します。 |
[^] | 角かっこ内の文字列の先頭に曲折アクセント記号がある場合は、否定を意味します。したがって、[^bot] は、b、o、t 以外の任意の文字に一致します。 |
[~] | 角かっこ内の文字列の先頭にチルダがある場合は、否定を意味します。したがって、[~bot] は、b、o、t 以外の任意の文字に一致します。 |
[-] | 角かっこ内のハイフンは、文字の範囲を示します。たとえば、[b-o] は b から o までの任意の 1 文字に一致します。 |
{ } | 複数の文字または表現を中かっこで囲むと、それらはグループになります。グループはネストが可能で、1 組のパターンで最大 10 グループまでネストできます。 |
\ | ワイルドカード文字の前にバックスラッシュ(日本語環境では \)があると、IDE では、その文字をワイルドカードではなくそのままの文字として扱います。たとえば \^ は ^ という文字に一致し、行頭は検索されません。 |
関連項目
- System.RegularExpressions
- System.RegularExpressionsCore
- [置換](検索文字列 - エスケープ シーケンス)
- Perl RegEx 式を使用する検索および置換ユーティリティ: reFind.exe