1. 一致するテンプレートとして、正規表現はアトム (a ~ z などの通常の文字)、特殊な機能を持つ文字 (*、+、? などのメタ文字)、およびパターンの変更 シンボルは 3 つの部分で構成されます。
2. Perl 互換の正規表現関数でパターンを使用する場合は、パターンに区切り文字を追加する必要があります。つまり、パターンを 2 つのバックスラッシュ / の間に含める必要があります。
1. 区切り文字
Perl 互換の正規表現を使用する場合は、区切り文字の間にパターン式を入れます。区切り文字は「/」に限らず、数字、文字、バックスラッシュ以外の文字を使用できます。ただし、パターン式は 2 つのスラッシュ / の間に含まれると言うのが通常です。
2. アトム
アトムは正規表現の最も基本的な構成要素であり、各パターンには少なくとも 1 つのアトムが含まれている必要があります。
1. 通常の文字がアトムとして使用されます
a~z 、 A~Z 、 0 ~ 9 など
2. 一部の特殊文字とメタ文字がアトムとして使用されます
任意の記号をアトムとして使用できます記号は正規表現です。 いくつかの特別な意味を示します。特別な意味をキャンセルして通常のアトムに変えるには、エスケープ文字を使用する必要があります。
3. アトムとしての一部の非印刷文字 いわゆる非印刷文字は、文字列内の一部の形式制御記号です。スペース、復帰、タブなど。
4. アトムとして「ユニバーサル文字タイプ」を使用する
アトムとして印刷された文字であっても非印刷文字であっても、アトムは 1 つの文字のみと一致します。また、文字の種類に一致するアトムが必要になる場合もあります。数字の一致や文字の一致など。
5. アトムテーブル ([]) をアトムとしてカスタマイズします
特定の「アトムのようなもの」をカスタマイズするために使用し、互いに等しいアトムを定義するためにアトムを使用します。
たとえば、「/[jhp]sp/」は jsp、hsp、psp に一致します
3. メタキャラクター
Perl 正規表現を使用すると、さまざまなメタキャラクターを使用して一致を検索することもできます。いわゆるメタキャラクターは、正規表現を構築するために使用される特別な意味を持つ文字です。 * など正規表現では、メタ文字を単独で使用することはできません。メタ文字はアトムを変更するために使用されます。中国語の形容詞と同じように、説明する主題が必要です。例:私はハンサムです。ハンサムとは形容詞であり、それが私を表しています。メタキャラクターはこの種の理解と想像力を実現します。
正規表現を構築する方法は、さまざまな形容詞を使用して人や物を明確かつ直感的に表現するという記事を書く方法と同じです。正規表現のコンポーネントは、単一の文字、文字のコレクション、文字の範囲、文字間の選択、またはこれらすべてのコンポーネントの任意の組み合わせにすることができます。これらの文字はいくつかのサブカテゴリに分類されており、以下で説明されています。
1. 修飾子。回数制限あり。
2. 境界制限
3. 文字の外側の起点。パターン内の起点は、印刷不可能な文字を含むターゲット内の任意の文字と一致しますが、改行には一致しません。パターン修飾子 s が設定されている場合は、改行文字も照合されます。
4. パターン セレクター (|) は、オプションのグループに一致します。
5.パターンユニット。メタ文字 () を使用して、複数の原子を 1 つの大きな原子に結合し、1 つの単位として独立して使用します。
6. 後方参照。
7. パターンマッチングの優先順位: 左から右へ。
4. モード修飾子。