Вы можете сделать что-то вроде:
"::fa-camera-retro::".replace(/::(.*)::/, (string,match) =>
`<i class="fas ${match}"></i>`
)
Метод replace
принимает регулярное выражение (/::(.*)::/
). Здесь мы сопоставляем два набора двоеточий, и все, что находится между ними, помещается в скобки, что делает их группой совпадений. Второй аргумент replace
может быть функцией. Параметры - это совпадение, а затем любые группы, которые вы объявляете в совпадении. Эта функция возвращает строку для замены исходного полного соответствия.
Обратите внимание, что это не сработает для ряда совпадений, но вы можете решить эту проблему, настроив регулярное выражение (предпочтительно) или манипулируя текстом для управления одним токеном за раз (медленнее).
Подсказка