どこで働いているかわからない、無名のエンジニアのわりとどうでもいい日記www

ネットデブリ予定地です。。生暖かい目で今後ともヨロシクwww 技術よりも哲学的な内容が多いですww

javascriptの正規表現で一瞬イミフだった

これで

var reg_obj;
var reg_result;
var test = 'moge,hoge';

reg_obj = new RegExp('^(.*?),(.*?)$', "i");
reg_result = test.match(reg_obj);

console.log(RegExp.$1);
console.log(RegExp.$2);

var moge = RegExp.$1;
moge = moge.replace(/m/i, '11111');

console.log(RegExp.$1);
console.log(RegExp.$2);

後半のRegExp.$1の中身が空っぽになった。
多分replaceのところで正規表現のオブジェクトが上書きされるからだな。

気づいてしまうと簡単だが、
気づかないと地味に嵌りそうなのでメモ。