У меня есть регулярное выражение для замены определенного шаблона определенной строкой, где строка строится динамически, повторяя определенный символ столько раз, сколько есть символов в совпадении.
Например, скажем, у меня есть следующая команда замены:
%s/hello/-----/g
Однако вместо этого я хотел бы сделать что-то вроде этого:
%s/hello/-{5}/g
где несуществующее обозначение -{5}
будет обозначать символ тире, повторяющийся пять раз.
Есть ли способ сделать это?
В конечном итоге я хотел бы добиться чего-то вроде этого:
%s/(hello)*/-{\=strlen(\0)}/g
который заменит любой экземпляр строки только hello
s строкой, состоящей из символа тире, повторенного количество раз, равное длине совпадающей строки.