Как в регулярных выражениях использовать что то на подобие тернарных операторов?
Как в регулярных выражениях использовать что то на подобие тернарных операторов? Т.е в зависимости от подстроки заменять на ту или иную? Напрмиер:
Pressure->TabVisible = false;
Temperature->TabVisible = true;
заменить на
HideTab(ui->Pressure);
ShowTab(ui->Temperature);
По отдельности я делал в Notepad++ так :
(\w+)->TabVisible = true -> ShowTab\(ui->\1\)
(\w+)->TabVisible = false -> HideTab\(ui->\1\)
Ответы (1 шт):
Автор решения: девочка с глазами ребёнка
→ Ссылка
Следующее регулярное выражение:
(\w+)->TabVisible\s*=\s*(?:(true)|(false))
Заменяете на:
(?3HideTab\(ui->$1\):ShowTab\(ui->$1\)
В результате:
UPD: Шаблон замены можно сократить до (?3Hide:Show)Tab\(ui->$1\).
Спасибо за комментарий @WiktorStribiżew.

