検索
ホームページphp教程php手册正規表現の構文(変換)

文法|通常

正規表現構文


正規表現は、通常の文字 (文字 a ~ z など) と特殊文字 (メタ文字と呼ばれる) で構成されるテキスト パターンです。パターンは、テキスト本文を検索するときに一致する 1 つ以上の文字列を記述します。正規表現は、文字パターンと検索文字列を照合するテンプレートとして機能します。
次に、遭遇する可能性のある正規表現の例をいくつか示します。
Visual Basic Sc​​ripting Edition
VBScript
matches
/^[ t]*$/
"^[ t]*$"
1 つの空白行と一致。
/d{2}-d{5}/
"d{2}-d{5}"
ID 番号が 2 桁の数字、ハイフン、5 桁の数字で構成されているかどうかを確認します。
/*1>/
"*1>"
HTML タグと一致します。
次の表は、正規表現のコンテキストにおけるメタキャラクターとその動作の完全なリストです:
Character
Description

次の文字を特殊文字、リテラル文字、またはサフィックス方向参照としてマークします。または 8 進エスケープ文字。たとえば、「n」は文字「n」と一致します。 「n」は改行文字に一致します。シーケンス '\' は "" に一致し、"(" は "(" に一致します。
^
は入力文字列の先頭に一致します。 RegExp オブジェクトの Multiline プロパティが設定されている場合、 ^ は 'n' にも一致します。
$ の後の 'r '
は入力文字列の末尾に一致します。 RegExp オブジェクトの Multiline プロパティが設定されている場合、$ は 'n' または 'r' の前の位置にも一致します
*
は前の sub に一致します。たとえば、zo* は「z」と「zoo」に一致します。たとえば、「zo+」は一致します。 "z". + {1,} に相当します。
たとえば、「do(es)?」は、「do」または「does」に相当します。 0,1}。

n
は、
n 回一致する非負の整数です。「Bob」の「o」には一致しませんが、「food」の 2 つの o には一致します。 n
,} n は、少なくとも 回一致する非負の整数です。たとえば、「o{2,}」は「Bob」の「o」と一致しますが、「o{1」は一致します。 ,}' は 'o+' と同等です。{0,}' は 'o*' と同等です。
m
n は両方とも非負の整数です。 n m は少なくとも
n 回、最大で m 回一致します。「o{1,3}」は「o{0,1}」の最初の 3 つの o と一致します。 ' は 'o?' と同等です。この文字の後に他のリミッター (*、+、?、{n
}、{) が続く場合、カンマと 2 つの数字 ? の間にスペースを入れることはできないことに注意してください。 n,}、{n ,m})、マッチング モードは非貪欲モードです。非貪欲モードは検索文字列の可能な限り少ない部分と一致しますが、デフォルトの貪欲モードは検索文字列のできるだけ多くと一致します。たとえば、文字列「oooo」の場合、「o+?」は「n」を除くすべての「o」に一致します。内の文字は、「[.n]」のようなパターンを使用してください。(pattern) matches コレクションから取得した一致を VBScript の SubMatches
コレクションで使用してください。 Basic Sc​​ripting Edition では、
$0$9 属性を使用します。括弧文字を一致させるには、「(」または「)」を使用します。 (?:pattern) pattern
と一致しますが、一致結果を取得しません。これは、一致を取得できず、後で使用するために保存されないことを意味します。これは、「または」文字 (|) を使用してパターンの一部を結合する場合に便利です。たとえば、「industr(?:y|ies)」は「industry|industries」より短い式です。
(?=
pattern) 前方参照。
patternに一致する文字列の先頭にある検索文字列と一致します。これは非フェッチ一致です。つまり、後で使用するために一致をフェッチする必要はありません。たとえば、「Windows (?=95|98|NT|2000)」は、「Windows 2000」の「Windows」には一致しますが、「Windows 3.1」の「Windows」には一致しません。プリフェッチでは文字は消費されません。つまり、一致が発生した後、次の一致の検索は、プリフェッチを含む文字の後に開始されるのではなく、最後の一致の直後に開始されます。 (?!パターン) 否定先読みは、文字列がパターンと一致しない任意の点で検索文字列と一致します。これは非フェッチ一致です。つまり、後で使用するために一致をフェッチする必要はありません。たとえば、「Windows (?!95|98|NT|2000)」は、「Windows 3.1」の「Windows」と一致しますが、「Windows 2000」の「Windows」とは一致しません。プリフェッチは文字を消費しません。つまり、一致が発生した後、次の一致の検索は、プリフェッチ
x|y
match x または。たとえば、「z|food」は「z」または「food」と一致します。 '(z|f)ood' は、「zood」または「food」と一致します。
[xyz]
キャラクターコレクション。含まれている文字のいずれかと一致します。たとえば、「[abc]」は「plain」の「a」と一致します。
[^xyz]
ネガティブなキャラクターのコレクション。含まれていない任意の文字と一致します。たとえば、「[^abc]」は「plain」の「p」と一致します。
[a-z]
文字範囲。指定された範囲内の任意の文字と一致します。たとえば、「[a-z]」は、「a」から「z」の範囲内の任意の小文字のアルファベット文字と一致します。
[^a-z]
否定文字の範囲。指定された範囲内にない任意の文字と一致します。たとえば、「[^a-z]」は「a」から「z」の範囲にない任意の文字と一致します。
b
は、単語とスペースの間の位置を指す単語境界に一致します。たとえば、「erb」は「never」の「er」と一致しますが、「動詞」の「er」とは一致しません。
B
単語以外の境界を一致させます。 「erB」は「動詞」の「er」と一致しますが、「never」の「er」とは一致しません。
cx
は、xで指定された制御文字と一致します。たとえば、cM は Control-M または復帰文字と一致します。 x の値は、A ~ Z または a ~ z のいずれかでなければなりません。それ以外の場合、c はリテラルの「c」文字として扱われます。
d
は数字と一致します。 [0-9]に相当します。
D
は数字以外の文字と一致します。 [^0-9] と同等。
f
はフォーム フィード文字と一致します。 x0c および cL に相当します。
n
は改行文字と一致します。 x0a および cJ に相当します。
r
は復帰文字と一致します。 x0d および cM に相当します。
s
スペ​​ース、タブ、フォームフィードなどを含む任意の空白文字と一致します。 【fnrtv】に相当。
S
空白以外の文字と一致します。 [^ fnrtv] に相当します。
タブ文字と一致しません。 x09 および cI に相当します。
v
は垂直タブ文字と一致します。 x0b および cK に相当します。
w
アンダースコアを含む任意の単語文字と一致します。 「[A-Za-z0-9_]」と同等。
W
単語以外の文字と一致します。 「[^A-Za-z0-9_]」と同等。
x
n
n と一致します。ここで、n は 16 進数のエスケープ値です。 16 進エスケープ値は正確に 2 桁の長さである必要があります。たとえば、「x41」は「A」と一致します。 「x041」は「x04」および「1」と同等です。 ASCII エンコーディングは正規表現で使用できます。 .
num
num と一致します (num は正の整数)。取得した一致への参照。たとえば、「(.)1」は、連続する 2 つの同一の文字に一致します。
n 8 進エスケープ値または後方参照を識別します。
n の前に少なくとも n フェッチされた部分式がある場合、n は後方参照です。それ以外の場合、n が 8 進数 (0 ~ 7) の場合、n は 8 進数のエスケープ値になります。
nm 8 進エスケープ値または後方参照を識別します。
nm の前に少なくとも nm の取得された部分式がある場合、 nm は後方参照です。 nm の前に少なくとも ngets がある場合、n は後方参照であり、その後にリテラルの m が続きます。前述の条件がいずれも満たされず、nm が両方とも 8 進数 (0 ~ 7) である場合、nm は 8 進数のエスケープ値 nm と一致します。
nml n
が 8 進数 (0 ~ 3) で、ml が両方とも 8 進数 (0 ~ 7) である場合、8 進エスケープ値 nml と一致します。 un
n
と一致します。ここで、n は 4 桁の 16 進数で表される Unicode 文字です。たとえば、u00A9 は著作権記号 (?) に一致します。



声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)