От чтения FCD для regex_replace
(28.11.4) я могу только догадываться, что функция также может использовать части исходной строки для замены? Я не могу проверить ее с помощью gcc, это правильно?
using namespace std;
regex rx{ R"((\d+)-(\d+))" }; // regex: (\d+)-(\d+)
cout << regex_replace("123-456", rx, "b: $2, a:$1");
// "b: 456, a:123"
Как вы можете видеть, я полагаю, что $1
и $2
относятся к группам захвата(), а не \1
и \2
, как в другом месте).
Обновить. Итак, я думаю, это вопрос из двух частей
- Используется ли это использование групп захвата в заменяемом тексте?
- Является синтаксисом ECMAScript по умолчанию, используя
$
n? Или\
n?