См. Документация Mozilla ; вы не получите эти данные бесплатно.
Хорошая новость заключается в том, что вы получите смещение совпадения в качестве второго и последнего аргумента и итоговую строку в качестве последнего. Таким образом, вы можете запускать свои собственные функции подстроки.
var str = 'abc';
str = str.replace('b', function (match, offset, full) {
var before = full.substr(0, offset),
after = full.substr(offset + 1, full.length - offset);
return 'foo'; // or, ya know, something actually using before and after
});