У меня есть некоторые выражения вида 3 * (item1; item2; item3;), и я хочу заменить их на item1; item2; item3; item1; item1; item2; item3; item1; item2; item3;(то есть 3 штуки в скобках, не включая скобки)
Я могу написать регулярное выражение для извлечения соответствующих частей, но я не уверен, как сделать другую часть - у меня была игравокруг с submatch () и eval (), но я не нашел способа объединить строку с собой определенное количество раз:
:%s/\(\d+\)\*(\(\_[^)]\+\))/what goes here...?
Я надеялся что-то вроде \2 {\ 1} будет работать, но это не оценивает число в фигурных скобках.Если я поступаю неправильно, это нормально - я не особенно привязан к тому, чтобы делать это таким образом, я просто знаю, и мне просто интересно, возможно ли это легко сделать в Vim.
Спасибо, если кто-нибудь может помочь!