最初にマッチした文字列のみの置換
1)テキスト置換
使い方例:
var value="Hello World";
value.replace("o", "*");
2)正規表現式による置換
使い方例:
var value="Hello World";
value.replace(/o/, "*");
置換文字列の前後に"/"を付けることで、正規表現式による置換になります。
すべてマッチした文字列の置換(全置換)
Javascriptの文字列オブジェクトにreplaceAllという関数が提供されていませんが、少なくとも次の3つの方法があると思います。
1)g スイッチ
正規表現式の後ろに"g"を記述すれば、文字列の全置換になります。
使い方例:
var value="Hello World";
value.replace(/o/g, "*");
2)split/join関数
使い方例:
var value="Hello World";
value.split("o").join("*");
普段の場合、次のようなreplaceAll関数を定義しておけば、便利でしょう。
// 全ての文字列 s1 を s2 に置き換える
function replaceAll(expression, org, dest){
return expression.split(org).join(dest);
}
使い方例:
var value="Hello World";
replaceAll(value, "o", "*");
3)Stringクラスを拡張
// 全置換:全ての文字列 org を dest に置き換える
String.prototype.replaceAll = function (org, dest){
return this.split(org).join(dest);
}
上のように書いておけば String クラスにreplaceAll関数が追加されます。
使い方例:
var value="Hello World";
value.replaceAll("o", "*");
.