JavaScriptではreplaceメソッドはありますが、replaceAllメソッドはありません。
そこで、replaceAllメソッドを実装してみます。
※replaceメソッドは、一番初めに出現した文字のみ置換するメソッドで、 replaceAllメソッドは、出現した文字全てを置換するメソッドです。
replaceAllを実装する(通常Function版)
通常のFunctionで定義したreplaceAllメソッドです。
例)Function版のreplaceAllメソッド
1 2 3 4 |
function replaceAll(str, beforeStr, afterStr){ var reg = new RegExp(beforeStr, "g"); return str.replace(reg, afterStr); } |
- (使用例)
- var str = "pikopiko"; var result = replaceAll(str, "i", "e"); → "pekopeko"
replaceAllを実装する(prototype版)
prototypeで定義したreplaceAllメソッドです。
prototypeを使うと、あたかも標準のメソッドのような使い方ができます。
例)prototype版のreplaceAllメソッド
1 2 3 4 5 6 |
window.onload=function(){ String.prototype.replaceAll = function(beforeStr, afterStr) { var reg = new RegExp(beforeStr, "g"); return this.replace(reg, afterStr); }; } |
- (使用例)
- var str = "pikopiko"; var result = str.replaceAll("i", "e"); → "pekopeko"