8

我正在开发一个进行一些字符串操作的 Vimscript。我想知道是否有一种方法可以通过将另一个字符串乘以某个倍数来生成字符串。例如,'a' * 5会产生 5 个 a's: 'aaaaa'。直到现在,我一直在用这样的while循环来做这件事:

let l:char = 'a'
let l:x = 5
let l:i = 0
let l:somestr = ""
while l:i < l:x
    let l:somestr .= l:char
    let l:i += 1
endwhile

对于我正在做的事情,这似乎非常冗长。有什么办法可以让这个更紧凑?

4

1 回答 1

11

repeat()功能可以做到这一点;不仅适用于字符串,也适用于列表元素:

:let l:somestr = repeat(l:char, l:x)
于 2013-03-08T20:45:08.843 回答