#javascript #regex
Вопрос:
Как бы я заменил каждое вхождение символа в строке на --[character]--
in es6
предпочтительно.
Пример строки: tb23a
Шаблон: t3a
Ожидаемый результат: --t--b2--3----a--
Ответ №1:
function replaceEveryChar(value, options) { const { chars = '', leading = '', trailing = '' } = options; return (chars amp;amp; String(value).replace( RegExp(`[${ chars }]`, 'g'), match =gt; `${ leading }${ match }${ trailing }` )) || value; } console.log( "replaceEveryChar('tb23a', { chars: 't3a', leading: '--', trailing: '--' }) ...", replaceEveryChar('tb23a', { chars: 't3a', leading: '--', trailing: '--' }) ); console.log( "replaceEveryChar('tb23a', { chars: 'b2', leading: '*', trailing: ' ' }) ...", replaceEveryChar('tb23a', { chars: 'b2', leading: '*', trailing: ' ' }) ); console.log( "replaceEveryChar('foobar', { leading: '*', trailing: ' ' }) ...", replaceEveryChar('foobar', { leading: '*', trailing: ' ' }) );
.as-console-wrapper { min-height: 100%!important; top: 0; }