文字列を考えるとinput_value=
<div href="asdf"></div>
<div href="1234"></div>
交換パターン
var res = input_value.replace(/.+href="(\w+)".+/gm, "$1");
console.log(res) //=>asdf 1234
期待どおりに動作します
ただし、演算子を使用して RegExp オブジェクトを宣言するとnew
(正規表現に動的要素を指定する唯一の方法を知っている限り)、正規表現は失敗し、input_value 全体が返されます。
var attribute = "href";
var re = new RegExp(".+" + attribute + "=\"(\w+)\".+", "gm");
var res = input_value.replace(re, "$1");
console.log(res) //=> <div href="asdf"></div>
//=> <div href="1234"></div>
これら2つの操作方法の違いは何ですか?