正規表現の一般的な知識だけでなく、いくつかの小さな演習レッグ

#正規表現

 

正規表現は、ルールに一致する、指定された[特徴]式を見つけるために使用される式です。

 

#正規表現は、方法を定義します

`` `

VAR REG = / ABC /;

VaRのREG =新しい正規表現( 'ABC');

推奨使用リテラルの方法は、配列やオブジェクトなど、推奨リテラル方法を作成します

#正規表現を使用します

`` `

reg.test(STR)。

str.match(REG)。

スペシャリティー#I / G / M

 

Gは、グローバルマッチのグローバル代表であります

 

私は、ignoreCaseは代わってケースを無視します

 

mが複数の行が一致する複数行を表し、

 

#特殊文字

 

特別な意味を持つ文字。

\エスケープ文字

|または、

 

##角括弧  

`` `

[abc]は、角括弧内の任意の単一の文字を検索します

[^ abc]はカッコ内にない任意の文字を探します

[0-9] 0-9の間の数を見つけます

[AZ]は任意の小文字の文字を見つけます

[AZ]は任意の大文字を見つけます

[AZ]任意の文字を検索するには

(赤|青|緑)指定された検索文字列(部分式)

 

##メタ文字

`` `

改行と行末以外の単一の文字を検索します。

\ Wは単語の文字を検索します

\ W非単語文字を探します

\ Dデジタル見つけます

\非デジタルを探すD

\ Sは空白文字を探します

\ Sは非空白文字を探します

\ Bワード境界検索

\ B非単語の境界を探します

\ Nは改行を探します

\ F検索フィード文字

\ Rの検索キャリッジリターン

\ Tタブを探します

\ V垂直タブを探します

\ Uxxxは16進数xxxxの規定にUnicode文字を見つけます

##数量詞

 

以下は貪欲試合に従うことです。

 

N + nは任意の文字が少なくとも1で含まれて一致しました

N *は任意の文字がnの0回以上の繰り返しが含まれていると一致します

nは?任意の文字または0のnに一致します

N X Nの{X}文字列照合シーケンス

N {X、Y} X nとYの配列をマッチする文字列、

N N $文字列は、で終わります

^ Nは、Nで始まる任意の文字列にマッチします

?Nは、指定された文字列と一致する文字列を直ちにNが続きます=

?!Nは、直ちに指定された文字列のnが続いていない任意の文字列に一致します

 

非貪欲試合:

N +?N *?...

##サプリメント

`` `

(?:N)、一致する部分式はこの1つではありません(グループ化勝っ記入しません)

#RegExpオブジェクトのプロパティ

gフラグを持つグローバルなRegExpオブジェクトかどうかをチェックします

IマークがignoreCaseはRegExpオブジェクトかどうかをチェックします

Mマークを複数行RegExpオブジェクトかどうかをチェックします

ソースを表示正規表現のソーステキスト

lastIndexの整数フラグは、(典型的には、Execでの使用)次の文字位置の一致を開始します

 

#RegExpオブジェクトのメソッド

コンパイルする正規表現をコンパイルします。(これは正規表現を変更することです)

Execの値は、検索文字列で指定されました。検索の戻り値とその位置を決定します。

テストは、文字列で指定された値を取得します。trueまたはfalseを返します。

#文字列の方法

正規表現検索検索された値が一致しました

すべての試合結果は定期的な整合条件と一致している検索

また、正規表現にマッチする文字列を置換

文字列の配列(:ワードは式部分式場合残る分割注)に分割

 

`` `

 

 

// bbaaに正規表現形式のAABB

//するvar strが= 'AABBCCDD';

// VARのREG = /(\ W)\ 1(\ W)\ 2 / gであり

// VAR STR1 = str.replace(REG、関数($、$ 1、$ 2){

//は+ $ 1 + $ 1 $ 2 + $ 2返します。

//})

//にconsole.log(STR1)。// bbaaddcc

 

10.000.000.000になるために// 100億3 RBI

//するvar strの= '10000000000';

// VAR REG = /(?=(\ B)(\ D {3})+ $)/ G。

// str.replace(REG、 ''); //10.000.000.000

 

//文字列abcは重いaaaaaaaaaaaaaaaaaaaaaabbbbbbbbccccccccccになるために

//するvar strの= 'aaaaaaaaaaaaaaaaaaaaaabbbbbbbbcccccccccc';

// VARのREG = /(\ W)* 1 \(\ W)2 *(\ W)\ \ * 3 / gであり

// str.replace(REG、関数($、$ 1、$ 2、$ 3){

//は+ $ 3 $ 1 + $ 2返します。

//})。// "ABC"


 

//小さなこぶ式theFirstNameに-最初の名を変換

 

//するvar strの=「・ファースト・ネーム」;

// VARのREG = / - (\ W)/ G。

// str.replace(REG、機能($、$ 1){

; //は$ 1.toUpperCase()を返します

//})// theFirstName


 

//デジタルの終わりにマッチ

 

//するvar strの= 'dkfdj1232';

// VAR REG = / \ D $ /グラム。

// str.match(REG)。// [ "2"]

 

//スペースの統一番号

//するvar strの= 'fkjdf';

// VAR REG = / \ sの+ /グラム;

// str.replace(REG、 '「); // "fkjdf"

 

分析//文字列は、デジタルによって形成されていません

 

// VAR STR = 'fdjfd214234234';

// VAR REG = /(\ D *:[-ZA-Z)/ G。

// reg.test(STR); // falseを


 

//文字列にスペースを削除

//削除末尾のスペース

//するvar strの= 'D kdfjd dfjdkf';

// VAR REG = /(^ \ sの*)|(\ S *)$ /グラム。

// str.replace(REG、 ''); // "D kdfjd dfjdkf"

//すべてのスペースを削除

// VAR REG = /(\ sの*)/グラム。

// str.replace(REG、 ''); // "dkdfjddfjdkf"


 

// ID番号が一致

//するvar strの= '12345678976543879X';

// VARのREG = /(^ \ D {15} $)|(^ \ D {18} $)|(^ \ D {17}(\ D | X | X)$)/; //グローバルに必要試合

// reg.test(STR);

 

//電子メールアドレスの確認

STR = '[email protected]' でした。

REG = /^[0-9a-zA-Z_-]+@[0-9a-zA-Z_-]+(\.[0-9a-zA-Z_-]+)+$/ました。

reg.test(STR)。

 

公開された19元の記事 ウォン称賛58 ビュー50000 +

おすすめ

転載: blog.csdn.net/cyg_l02/article/details/84945345