Найти строку, окруженную определенным символом, заменить символы, но сохранить строку нетронутой

Найти строку, окруженную определенным символом, заменить символы, но сохранить строку нетронутой

У меня есть несколько документов, содержащих переменные, которые необходимо изменить:

@CapitalPx@

К этому:

${CapitalPx}

Я узнал о поиске и замене с помощью регулярных выражений и получил следующее:

\@([a-z0-9]+)\@

Моя конечная цель — заменить то, что я нашел, чем-то, что будет выглядеть примерно так:

\$\{([a-z0-9])\}

но он просто заменяет то, что я нашел, этой строкой, не интерпретируя ее.

Я также пытался найти регулярное выражение, которое будет соответствовать слову, начинающемуся или заканчивающемуся на «@», но оно не работает на 100% (LibreOffice, похоже, ограничен в этом плане).

Есть ли у кого-нибудь предложения?

заранее спасибо

решение1

Я бы сделал:

  • Находить:@(\w+)@
  • Заменять:${$1}

Проверьте регулярное выражение.

Объяснение:

@       : literally @
(       : start group 1
  \w+   : 1 or more word character
)       : end group 1
@       : literally @

Связанный контент