Странное Javascript Regex Заменить поведение обратных ссылок - PullRequest
2 голосов
/ 18 марта 2010

почему следующее выражение js:

"test1 foo bar test2".replace(/foo.bar/, "$'")

результат в следующей строке?

"test1  test2 test2"

- это $' в строке замены, своего рода управляющий код для включения всего после совпадения ???

это поведение меня бесило большую часть дня. Кто-нибудь может объяснить это?

большое спасибо

ps - так обстоит дело во всех браузерах, которые я тестировал

1 Ответ

6 голосов
/ 18 марта 2010

В параметре замены регулярного выражения вам нужно экранировать $:

"test1 foo bar test2".replace(/foo.bar/, "$$'")

$' вставляет часть строки, которая следует за совпадающей подстрокой.
См. документацию .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...