JavaScript - String-Regex-Rückverweise

Sie können in JavaScript folgendermaßen zurückverweisen:

var str = "123 $test 123";
str = str.replace(/(\$)([a-z]+)/gi, "$2");

Dies würde (ziemlich albern) "$ test" durch "test" ersetzen. Aber stellen Sie sich vor, ich möchte die resultierende Zeichenfolge von $ 2 an eine Funktion übergeben, die einen anderen Wert zurückgibt. Ich habe es versucht, aber anstatt den String "test" zu bekommen, bekomme ich "$ 2". Gibt es einen Weg, dies zu erreichen?

// Instead of getting "$2" passed into somefunc, I want "test"
// (i.e. the result of the regex)
str = str.replace(/(\$)([a-z]+)/gi, somefunc("$2"));

Antworten auf die Frage(5)

Ihre Antwort auf die Frage