JavaScript学習メモ(12) RegExp型入門_基礎知識

WBOY
リリース: 2016-05-16 17:52:36
オリジナル
958 人が閲覧しました

1. マッチング パターン タグ:
g ------- は、最初に一致が見つかったときにすぐに終了するのではなく、グローバル パターンを表します。
i ------- は、大文字と小文字を区別しないパターンを表します。
m ----- は、複数行のマッチングを意味します。1 行が終了したら、次の行にマッチングを続けます。

コードをコピー コードは次のとおりです:

//最初のコウモリまたはネコと一致します。大文字と小文字は区別されません
var pattern1 = /[bc]at/i
var pattern2 = new RegExp ("[bc]at" ,"i"); //上記と同じ

RegEXp を使用してリテラルモードを文字列に変換します
/[bc]at/ ==== ===> "\[bc\]at"
/.at/ ==========> "\.at"
/名前/年齢/ ===== => "名前\/年齢 "
/d.d{1,2}/ ======> "\d.\d{1,2}"
/w\hello\123/ ====>"\ w\\hello\\123

2.RegExp インスタンス属性
global - g フラグが設定されているかどうかを示すブール値
ignoreCase - 示すブール値i フラグが設定されているかどうか
multiline - m フラグが設定されているかどうかを示すブール値
lastIndex - 次の一致の検索を開始する位置を示す整数
source - リテラル形式の文字列
コードをコピーします コードは次のとおりです。

var pattern2 = new RegExp("\[bc\] at","i");
alert(pattern2.source); //"[bc]at"

3.RegExp インスタンス メソッド
exec() メソッドは 1 つのパラメータを受け取ります正規表現が適用される文字列です。
は配列と 2 つの属性のインデックスと入力を返します。配列の最初の項目はパターン全体に一致する文字列で、他の項目はキャプチャに一致する文字列です。パターン内のグループ
コードをコピー コードは次のとおりです:

var text "mom and dat と赤ちゃん";
var pattern = /mom(とお父さん (と赤ちゃん)?)?/gi;

varmatches = pattern.exec(text);
alert(matches.index) ); //0
alert(matches.input); / /「ママとパパと赤ちゃん」
alert(matches[0]); //「ママとパパと赤ちゃん」
alert(matches) [1]); //「お父さんと赤ちゃん」
alter(matches[2]) //「赤ちゃんと」

非グローバルで exec() が呼び出されるたび
グローバル モードでは毎回 ecec() を呼び出すと、文字列の次の一致が返され、lastIndex の値が増加します

test() メソッド正規表現が適用される文字列を 1 つのパラメータとして受け入れます。一致する場合は true を返し、そうでない場合は false を返します。
Copy code コードは次のとおりです:

var text = "000-00-0000";
var pattern = /d{3}-d{2}-d{4 }/;

if (pattern.test(test)) {
alert("一致! ");
}

4.RegExp コンストラクター属性
コードをコピー コードは次のとおりです次のように:

var text = "これは短い夏でした";
var pattern = /(.)host/g;

if (pattern.test() text) ){
alert(RegExp.input); // これは短い夏でした。 RegExp.$_ に相当する、一致する最新の文字列。 Opera は
alert(RegExp.lastMatch) をサポートしません。 / /short RegExp["$&"] に相当する最新の一致。opera は
alert(RegExp.lastParen) をサポートしていません。 //s RegExp["$ " ] に相当する最新の一致キャプチャ グループ。 ,opera は
alert(RegExp.leftContext) をサポートしていません。 // これは RegExp["$`"] と同等の、一致前のテキストです。
alert(RegExp.rightContext); //一致する項目の後のテキストは RegExp["$'"]、
alert(RegExp.multiline); //false 複数行モードですか、RegExp["$*"]、opera および IE と同等です なしサポート
}

RegExp.$1 …… RegExp.$9 ストレージ キャプチャ グループ
コードをコピー コードは次のとおりです:

var text = "これは短い夏でした"
var pattern =/(..)or(.)/g; ( pattern.test(text)) {
alert(RegExp.$1) //sh
alert(RegExp.$2); //t
}

;
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート