7

我想在 Javascript(伪代码)中执行以下操作:

myString.replace(/mypattern/g, f(currentMatch));

也就是说,替换字符串不是固定的,而是当前匹配的函数。

4

2 回答 2

6

只需省略参数,即使用这个:

myString.replace(/mypattern/g, f);

这是一个例子:http ://ejohn.org/blog/search-and-dont-replace/

于 2009-02-04T17:30:05.077 回答
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";
});
于 2009-02-04T17:33:32.730 回答