在javascript中有类似PHP的preg_replace_callback()吗?

wam*_*amp 9 javascript regex

我想做的是str.replace(pattern, callback),

不简单str.replace(pattern, replace_pattern),

有可能在javascript中做到这一点吗?

dec*_*eze 15

为什么,是的,你可以做到这一点:str.replace(pattern, function () { ... }).

以下是一些文档:https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String/replace


Poi*_*nty 5

var s2 = s1.replace(/regex/, function(whole, part1, part2, ...) { ... })
Run Code Online (Sandbox Code Playgroud)

该函数作为第一个参数传递整个匹配的字符串.如果有任何捕获组,那些将作为后续参数传递.