Javascriptの正規表現置換(replaceメソッド)で後方参照(RegExp.$1とか)を使いたいと思った時、 str = "aaaaaa123aaaaa456aaaa7890" str1 = str.replace(/(\d+)/g, " (" + RegExp.$1 + ") "); //=> aaaaaa () aaaaa () aaaa () なんて書いてもうまくいきません。なぜなら、RegExp.$1は前回の検索時に最後にマッチした後方参照ですから。実際に試してみるとわかります。 str = "aaaaaa123aaaaa456aaaa7890" str1 = str.replace(/(\d+)/g, " (" + RegExp.$1 + ") "); str2 = str.replace(/(\d+)/g, " (" + RegExp.$1 + ") "); //=>