JSはreplace()の方法と正規表現を使って文字列の検索と置換例を行います。


1、JS文字列の置換及びreplace()方法の使用
replace(regexp,replace ment)メソッドには二つのパラメータがあります。第一パラメータは純粋な文字列またはRegExpオブジェクトであってもいいです。具体的にはRegExpオブジェクトの使用を見てください。二番目のパラメータは文字列でも関数でもあります。
以下はJS文字列の置換例です。
例1:

var str="Hello world!";
document.write(str.replace(/world/, "phper"));
例2:

var reg=new RegExp("(\\w+),(\\d+),(\\w+)","gmi");
var info="Lili,14,China";
var rep=info.replace(reg, "She is $1, $2 years old, come from $3");
alert(rep);
例3:

var reg=new RegExp("(\\w+),(\\d+),(\\w+)","gmi");
var info="Lili,14,China";
var name, age, from;
function prase_info(m,p1,p2,p3) { // , arguments
 name = p1;
 age = p2;
 from = p3;
 return "She is "+p1+", "+p2+" years old, come from "+p3;
}
var rep=info.replace(reg, prase_info);
alert(rep);
aler(name);
2、RegExpオブジェクトの使用
JavaScriptはRegExpオブジェクトを提供して、正規表現に関する動作と機能を完成させます。各正規表現モードはRegExpの例に対応しています。RegExpオブジェクトの例を作成することができる2つの方法がある。
RegExpの明示的な構造関数を使って、文法はnew RegExp(「pattern」[,「flags」)です。RegExpの陰的な構造関数を使用して、テキスト形式を使用します。例4の2つの文は等価である。
例4:

var re1 = new RegExp("\\d{5}");
var re2 = /\d{5}/;
 3、文字列の検索とexec()方法の使用
 exec()方法は、マッチングの結果を保存する配列を返します。マッチが見つからない場合、戻り値はnullです。
例5:

var reg=new RegExp("(\\w+),(\\d+),(\\w+)","gmi");
var m=reg.exec("Lili,14,China");
var s="";
for (i = 0; i < m.length; i++) {
      s = s + m[i] + "
";
}
alert(s);
4、test()方法の使用
RegExpObject.test(string)
文字列stringにRegExpObjectにマッチするテキストが含まれている場合、trueを返します。そうでなければfalseを返します。
例6:

var reg=new RegExp("(\\w+),(\\d+),(\\w+)","gmi");
var m=reg.test("Lili,14,China");
alert(RegExp.$1);
alert(RegExp.$2);
alert(RegExp.$3);