我想在Javascript(伪代码)中执行以下操作:
myString.replace(/mypattern/g, f(currentMatch));
也就是说,替换字符串不是固定的,而是当前匹配的函数。
答案 0 :(得分:6)
只需省略参数,即使用:
myString.replace(/mypattern/g, f);
答案 1 :(得分:6)
MDC声称你可以做到这一点:
function styleHyphenFormat(propertyName)
{
function upperToHyphenLower(match)
{
return '-' + match.toLowerCase();
}
return propertyName.replace(/[A-Z]/, upperToHyphenLower);
}
或者更一般地说:
myString.replace(/mypattern/g, function(match){
return "Some function of match";
});