ホームページ  >  記事  >  ウェブフロントエンド  >  正規表現の \v メタキャラクターの詳細な図による説明

正規表現の \v メタキャラクターの詳細な図による説明

php中世界最好的语言
php中世界最好的语言オリジナル
2018-03-29 10:48:392408ブラウズ

今回は正規表現のv要素文字を図で詳しく説明します。実際のケースを見てみましょう。

次の表には、正規表現のコンテキストにおけるメタキャラクターとその動作の完全なリストが含まれています:

🎜(?<span style="color:#333333;font-size:12px;font-family:NSimsun">(?</span>「一致可能」<span style="color:#333333;font-size:12px;font-family:NSimsun">3.1Windows</span> > "中"<span style="color:#333333;font-size:12px;font-family:NSimsun">Windows</span>" と一致しません" <span style="color:#333333;font-size:12px;font-family:NSimsun">"<code style="border" in>" -トップ: 0px; ボーダー下: 0px; パディング左: 0px; "><span style="color:#333333;font-size:12px;font-family:NSimsun">Windows</span>"。
文字 説明

次の文字を特殊文字としてマークする、またはリテラル文字、後方参照、または 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」と一致します。 ? {0,1} に相当します。

{n}

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

{n,}

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

{n,m}

m と n は両方とも非負の整数であり、n

?

文字が他のリミッター (*、+、?、{n}、{n,}、{n,m}) のすぐ後に続く場合、一致パターンは非貪欲です。非貪欲モードは検索文字列の可能な限り少ない部分と一致しますが、デフォルトの貪欲モードは検索文字列の可能な限り多くの部分と一致します。たとえば、文字列「oooo」の場合、「o+?」は単一の「o」に一致しますが、「o+」はすべての「o」に一致します。

.

は、改行文字 (n、r) を除く任意の 1 文字と一致します。 「n」を含む任意の文字と一致するには、「(.|n)」のようなパターンを使用します。

(pattern)

は pattern に一致し、この一致を取得します。取得された一致は、VBScript の SubMatches コレクションまたは JScript の $0 ~ $9 プロパティを使用して、生成された Matches コレクションから取得できます。括弧文字と一致させるには、「(」または「)」を使用します。

(?:pattern)

はパターンに一致しますが、一致結果を取得しません。つまり、一致を取得できず、後で使用するために保存されません。これは、「または」文字 (|) を使用してパターンの一部を結合する場合に便利です。たとえば、「industr(?:y|ies)」は「industry|industries」より短い式です。

(?=pattern)

先読み肯定アサート、文字列一致パターンの先頭にある検索文字列と一致します。これは非フェッチ一致です。つまり、後で使用するために一致をフェッチする必要はありません。たとえば、「Windows(?=95|98|NT|2000)」は、「Windows2000」の「Windows」と一致しますが、「Windows3.1」の「Windows」と一致することはできません。プリフェッチでは文字は消費されません。つまり、一致が発生した後、次の一致の検索は、プリフェッチを含む文字の後に開始されるのではなく、最後の一致の直後に開始されます。

(?!pattern)

正負のアサーション (負のアサート) は、パターンに一致しない文字列の先頭にある検索文字列に一致します。これは非フェッチ一致です。つまり、後で使用するために一致をフェッチする必要はありません。たとえば、「Windows(?!95|98|NT|2000)」は、「Windows3.1」の「Windows」と一致しますが、「Windows2000」の「Windows」と一致することはできません。プリフェッチでは文字は消費されません。つまり、一致が発生した後、次の一致の検索は、プリフェッチを含む文字の後に開始されるのではなく、最後の一致の直後に開始されます。

(?<=パターン) 逆 (後ろを見る) 正のルックアップは、正の順ルックアップと似ていますが、方向が逆です。たとえば、「<span style="color:#333333;font-size:12px;font-family:NSimsun">(?<=95|98|NT|2000)Windows</span>「一致可能」<span style="color:#333333;font-size:12px;font-family:NSimsun">2000Windows</span> "中"<span style="color:#333333;font-size:12px;font-family:NSimsun">Windows</span>" と一致しません" "<code style="、<span style=" color:>3.1Windows" の境界線-トップ: 0px; ボーダー下: 0px; パディング左: 0px; "><span style="color:#333333;font-size:12px;font-family:NSimsun">Windows</span>"。 <span style="color:#333333;font-size:12px;font-family:NSimsun">(?<=95|98|NT|2000)Windows</span>"能匹配"<span style="color:#333333;font-size:12px;font-family:NSimsun">2000Windows</span>"中的"<span style="color:#333333;font-size:12px;font-family:NSimsun">Windows</span>",但不能匹配"<span style="color:#333333;font-size:12px;font-family:NSimsun">3.1Windows</span>"中的"<span style="color:#333333;font-size:12px;font-family:NSimsun">Windows</span>"。
(? 反向否定预查,与正向否定预查类似,只是方向相反。例如"<span style="color:#333333;font-size:12px;font-family:NSimsun">(?<!95|98|NT|2000)Windows</span>"能匹配"<span style="color:#333333;font-size:12px;font-family:NSimsun">3.1Windows</span>"中的"<span style="color:#333333;font-size:12px;font-family:NSimsun">Windows</span>",但不能匹配"<span style="color:#333333;font-size:12px;font-family:NSimsun">2000Windows</span>"中的"<span style="color:#333333;font-size:12px;font-family:NSimsun">Windows</span>🎜
x|y

は、x または y と一致します。たとえば、「z|food」は「z」または「food」と一致します。 '(z|f)ood' は、「zood」または「food」と一致します。

[xyz]

キャラクターコレクション。含まれている文字のいずれかと一致します。たとえば、「[abc]」は「plain」の「a」と一致します。

[^xyz]

ネガティブなキャラクターのコレクション。含まれていない任意の文字と一致します。たとえば、「[^abc]」は「plain」の「p」、「l」、「i」、「n」に一致します。

[a-z]

文字範囲。指定された範囲内の任意の文字と一致します。たとえば、「[a-z]」は、「a」から「z」までの範囲内の任意の小文字のアルファベット文字と一致します。

[^a-z]

否定文字範囲。指定された範囲内にない任意の文字と一致します。たとえば、「[^a-z]」は「a」から「z」の範囲にない任意の文字と一致します。

b

は、単語とスペースの間の位置を指す単語境界に一致します。たとえば、「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 に相当します。

n

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

r

は復帰文字と一致します。 x0d および cM に相当します。

s

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

S

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

t

はタブ文字と一致します。 x09 および cI に相当します。

v

は垂直タブ文字と一致します。 x0b および cK に相当します。

w

文字、数字、アンダースコアを一致させます。 「[A-Za-z0-9_]」と同等。

W

は、文字、数字、アンダースコア以外に一致します。 「[^A-Za-z0-9_]」と同等。

xn

は 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 の前に少なくとも n が取得されている場合、n は後方参照であり、その後にリテラル m が続きます。前述の条件がどちらも当てはまらず、n と m が両方とも 8 進数 (0 ~ 7) である場合、nm は 8 進数のエスケープ値 nm と一致します。

nml

n が 8 進数 (0 ~ 3) で、m と l が両方とも 8 進数 (0 ~ 7) の場合、8 進数のエスケープ値 nml と一致します。

\un

匹配 n,其中 n 是一个用四个十六进制数字表示的 Unicode 字符。例如, \u00A9 匹配版权符号 (?)。

\v元字符可以匹配垂直制表符。

语法结构:

(1).构造函数方式:

new RegExp(\\v)

(2).对象直接量方式:

/\v/

浏览器支持:

(1).IE浏览器支持此方法。

(2).火狐浏览器支持此方法。

(3).谷歌浏览器支持此方法。

(4).opera浏览器支持此方法。

(5).safria浏览器支持此方法。

实例代码:

var str="This is an \v good antzone";
var reg=/\v/;

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

怎么用正则表达式筛选身份证号码

vue2.0 axios跨域和渲染有哪些需要注意的

以上が正規表現の \v メタキャラクターの詳細な図による説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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