Enhancement of RegExp replacement

sion shanyy163 at 163.com
Fri Sep 7 13:23:18 UTC 2018

Is it possible to enhance the string.prototype.replace(regex, func) ?

By now, we can do something like this:

input.replace(/(^|_)[a-z]/g, a => a[a.length - 1].toUpperCase());
INPUT: ab_cd_ef     OUTPUT: abCdEf

However, i want something more powerfull, like this:

input.replace(/your (\w+) from (\w+)/g, a => 'book', b => 'amazon’);
INPUT: your friend from china OUTPUT: your book from amazon

As you can see, I just want the replace could replace multi fragments at the same time. And I don’t think there is any conflicts with other principles of string.prototype.replace.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20180907/5abfdccf/attachment.html>

More information about the es-discuss mailing list