javascript
1function printf(format) { 2 for (let i = 0, len = arguments.length; i < len; i++) { 3 var pattern = new RegExp("\{" + (i - 1) + "\}", "g"); 4 format = format.replace(pattern, arguments[i]); 5 } 6 console.log(format); 7} 8 9printf("こんにちは、{0}さん。私は{1}です。", "掛谷", "山田");
これで正しく{0},{1}に掛谷、山田と挿入されるのですが、
正規表現の部分を
javascript
1new RegExp("\{(i-1)\}","g");
としても正しく機能すると思ったのですがうまくいきません。
何が問題あるのかわかりません。
()の使い方に問題があるのでしょうか。
詳しい説明を期待しています。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。