Заменить все обратные ссылки в регулярных выражениях

При попытке заменить cout’ы я использовал для отладки более сложную функцию ведения журнала. Я столкнулся со следующей проблемой:

Сообщение в настоящее время построено так:

testValue;
cout << "value" << testValue;

И должно стать так:

logger->log("value" + SSTR(testValue), program_component, 2);

Где SSTR — это пользовательский макрос, который преобразует in в строку.

Однако я не знаю, как это сделать, как заменить любое количество выходов?

То, что я до сих пор получил это выражение:

cout((?([^\r\n])\s)*\<\<(?([^\r\n])\s)*((?<string>(\".*?\"))|(?<id>(\b(_\w+|[\w-[0-9_]]\w*)\b))))*

и этот шаблон замены:

log(${id}, programComponent, 2)

Буду очень признателен за любую помощь 🙂

С наилучшими пожеланиями, Лаурис

0

Решение

Задача ещё не решена.

Другие решения