ホームページ  >  記事  >  バックエンド開発  >  正規表現メタキャラクターの完全なリストとその動作の説明_PHP チュートリアル

正規表現メタキャラクターの完全なリストとその動作の説明_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-20 11:15:231127ブラウズ

キャラクター

手順

次の文字を特殊文字、テキスト、後方参照、または 8 進エスケープとしてマークします。たとえば、「n」は文字「n」と一致します。 「n」は改行文字に一致します。入力文字 * + ? ( ) { }^ $ が含まれます。たとえば、シーケンス「\」は「」に一致し、「(」は「(」に一致します。

^

入力文字列の先頭と一致します。

RegExp オブジェクトの Multiline プロパティが設定されている場合、^ は "n" または "r" の後の位置にも一致します。

$

入力文字列の末尾と一致します。

RegExp オブジェクトの Multiline プロパティが設定されている場合、$ は "n" または "r" の前の位置にも一致します。

*

前の文字または部分式と 0 回以上一致します。たとえば、zo* は「z」と「zoo」に一致します。 * {0,} に相当します。

+

先行する文字または部分式と 1 回以上一致します。たとえば、「zo+」は「zo」と「zoo」に一致しますが、「z」には一致しません。 + {1,} と同等。

?

先行する文字または部分式と 0 回または 1 回一致します。たとえば、「do(es)?」は「do」または「does」の「do」と一致します。 ? {0,1} に相当します。

{

}

n は負ではない整数です。 n回正確に一致しました。たとえば、「o{2}」は「Bob」の「o」とは一致しませんが、「food」の両方の「o」には一致します。

{

,}

n は負ではない整数です。少なくとも n 回一致しました。たとえば、「o{2,}」は「Bob」の「o」とは一致しませんが、「foooood」のすべての「o」と一致します。 「o{1,}」は「o+」と同等です。 「o{0,}」は「o*」と同等です。

{

m}

Mn は負ではない整数で、n m です。少なくとも n 回、最大 m 回一致しました。たとえば、「o{1,3}」は「fooooood」の最初の 3 つの o と一致します。 「o{0,1}」は「o?」と同等です。注: カンマと数字の間にスペースを挿入することはできません。

?

この文字が他の修飾子 (*, +, ?, {

n}, {n,}, {n,m}) の直後にある場合、一致パターンは「非貪欲」です。 「非貪欲」パターンは検索される可能な限り短い文字列に一致しますが、デフォルトの「貪欲」パターンは検索される可能な限り長い文字列に一致します。たとえば、文字列「oooo」では、「o+?」は 1 つの「o」のみに一致しますが、「o+」はすべての「o」に一致します。

.

「n」を除く任意の 1 文字と一致します。 「n」を含む任意の文字と一致するには、「[sS]」などのパターンを使用します。

(

パターン)

pattern

と一致し、一致する部分式をキャプチャします。キャプチャされた一致は、$0…$9 属性を使用して、結果の「一致」コレクションから取得できます。括弧文字 ( ) と一致させるには、「(」または「)」を使用します。 (?:

パターン

)

pattern

と一致しますが、その一致の部分式をキャプチャしません。つまり、これは非キャプチャ一致であり、後で使用するために一致を保存しません。これは、パターン部分を「または」文字 (|) と組み合わせるときに便利です。たとえば、「industr(?:y|ies)」は「industry|industries」よりも経済的な表現です。 (?=

パターン

) パターン

に一致する文字列の先頭にある文字列と一致する前方検索を実行する部分式。これは非キャプチャ一致、つまり、後で使用するためにキャプチャできない一致です。たとえば、「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

x または

y

に一致します。たとえば、「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

単語の境界、つまり単語とスペース (または句読点 - 文字と数字を除く ASCII 標準文字は通常句読点として理解されます) の間の位置 (開始位置と終了位置を含む) を一致させます。たとえば、「erb」は「never」の「er」と一致しますが、「verb」の「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 に相当します。

改行一致。 x0a および cJ に相当します。

r

キャリッジリターン文字と一致します。 x0d および cM に相当します。

スペース、タブ、フォームフィードなどを含む任意の空白文字と一致します。 「fnrtv」に相当。

S

空白以外の文字と一致します。 [^ fnrtv] に相当します。

タブマッチング。 x09 および cI に相当します。

v

垂直タブのマッチング。 x0b および cK に相当します。

w

アンダースコアを含む任意の文字と一致します。 「[A-Za-z0-9_]」に相当します。

単語以外の文字と一致します。 「[^A-Za-z0-9_]」と同等。

xn

n と一致します。ここで、n は 16 進数のエスケープ コードです。 16 進エスケープ コードの長さは正確に 2 桁である必要があります。たとえば、「x41」は「A」と一致します。 「x041」は「x04」と「1」に相当します。正規表現で ASCII コードを許可します。

番号

num と一致します。ここで num は正の整数です。一致をキャプチャするための後方参照。たとえば、「(.)1」は、連続する 2 つの同一の文字と一致します。

8 進数のエスケープ コードまたは後方参照を識別します。 n の前に少なくとも n キャプチャ部分式がある場合、 n は後方参照です。それ以外の場合、n が 8 進数 (0 ~ 7) の場合、n は 8 進数のエスケープ コードになります。

んん

8 進数のエスケープ コードまたは後方参照を識別します。 nm の前に少なくとも nm キャプチャ部分式がある場合、 nm は後方参照です。 nm の前に少なくとも n キャプチャがある場合、n は後方参照であり、その後に文字 m が続きます。前の条件がどちらも存在しない場合、nm は 8 進数値 nm と一致します。ここで、n m は 8 進数 (0 ~ 7) です。

nml

nが 8 進数 (0 ~ 3)、ml が 8 進数 (0 ~ 7) である場合、8 進エスケープ コード nml と一致します。

n と一致します。ここで、n は 4 桁の 16 進数で表される Unicode 文字です。たとえば、u00A9 は著作権記号 (©) に一致します。

http://www.bkjia.com/PHPjc/440178.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/440178.html技術記事文字の説明では、次の文字が特殊文字、テキスト、後方参照、または 8 進エスケープ文字としてマークされます。たとえば、n は文字 n と一致します。 n は改行と一致します。入力文字を含みます。 ( )...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。