ホームページ  >  記事  >  ウェブフロントエンド  >  JS_javascriptスキルのreplaceメソッドの紹介

JS_javascriptスキルのreplaceメソッドの紹介

WBOY
WBOYオリジナル
2016-05-16 17:48:571114ブラウズ

この関数の最初のパラメータは、パターンに一致する文字列です。次の引数は、パターン内の部分式に一致する文字列です。このような引数は 0 個以上存在できます。次のパラメータは、一致が発生する stringObject 内の位置を宣言する整数です。最後のパラメータは stringObject 自体です。
次に、JavaScript の正規表現を置き換えるいくつかの方法を示します (セカンド パーティやサードパーティのメソッドなど)。

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

//次の例は取得に使用されます。 2 つの URL パラメータを取得し、urlRewrite の前に実際の URL を返します
var reg=new RegExp("(http://www.jb51.net/BookReader/)(\d ),(\d ).aspx","gmi ") ;
var url="http://www.jb51.net/BookReader/1017141,20361055.aspx";
//方法 1、最も単純で最もよく使用される方法
var rep= url.replace( reg,"$1ShowBook.aspx?bookId=$2&chapterId=$3");
alert(rep)
//方法 2、固定パラメータを使用したコールバック関数
var rep2= url.replace(reg ,function(m,p1,p2,p3){return p1 "ShowBook.aspx?bookId=" p3 "&chapterId=" p3});
alert(rep2); 3、非固定パラメータ コールバック関数を使用します
var rep3=url.replace(reg,function(){var args=arguments; return args[1] "ShowBook.aspx?bookId=" args[2] "&chapterId= " args[3] ;});
alert(rep3);
//メソッド 4
//メソッド 4 はメソッド 3 と非常に似ています。置換された文字列を返すだけでなく、次の値を取得することもできます。パラメータ
var 個別に bookId;
function capText()
var args=arguments;
bookId=args; [3];
return args[1] "ShowBook.aspx?bookId=" args[2] "&chapterId=" args[3];
}
var rep4=url.replace(reg,capText) );
alert( rep4);
alert(bookId);
alert(chapterId); // 正規表現のグループ化を取得するほかに、 test メソッドと exec メソッドを使用してグループ化を取得しますが、メソッドが異なります。単に異なるだけです
var reg2=new RegExp("(http://www.jb51.net/BookReader/)(\d ),(\ d ).aspx","gmi");
var m= reg2.exec("http://www.jb51.net/BookReader/1017141,20361055.aspx");
var s="" ;
//すべてのグループを取得します
for (i = 0; i s = s m[i] "n";
alert( s);
bookId=m[2];
alert(bookId);
alert(chapterId);グループ
var reg3=new RegExp("(http://www.jb51.net/BookReader/)(\d ),(\d ).aspx","gmi"); ("http://www.jb51.net/BookReader/1017141,20361055.aspx ");
// 3 つのグループを取得します
alert(RegExp.$1);
alert(RegExp.$3);
var str="www .baidu.com"
//str.format("good","q")
str.replace(new RegExp) ("(\.)(bai)du","g"),function (){
for(var i=0;i{
document.write( argument[i] "
");
}
document.write("---------------------- ---------- -------
");
});
2 つの例 (へ通常のパラメータと文字パラメータの置換結果が異なることを証明します):
alert(" 123".replace("1",function(){var un;return un;})); //pop up unknown23
alert("123".replace(new RegExp("1"),function(){ var un;return un;})); //ポップアップ 23

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