繁体   English   中英

有没有办法插入N次相同的字符

[英]Is there a way to insert N times the same characters

我找不到vscode是否有这样的故障。 有没有办法构造一个包含 N 个字符的字符串? 我自己解释:我需要像这样写一个空字符串:

foobar = "1111111111111111";

字符“1”出现了 16 次。 有没有办法像 Vim 那样构建这样的行:我写了 'foobar = "' 然后我会发出一个命令来重复字符 'i' 16 次。

我希望你清楚。

这是使用HyperSnips的简单方法 - 可以使用 javascript 生成 output 的片段扩展。首先是演示:

使用 HyperSnips 的转发器演示

HyperSnips 片段:

snippet `"(.+)\*(\d+)=` "expand" A
``
let origStr = m[1];
let howMany = parseInt(m[2]);
let newStr = origStr.repeat(howMany);
rv=`"${newStr}`
``
endsnippet

此代码放在<yourLanguage>.hsnips文件中,使其仅以该语言运行,或all.hsnips以在所有文件中运行。

我使用此键使其在""内运行: (.+)\*(\d+)=

=实际上是触发器 - 它会自动运行 - 您可以将其更改为其他内容。 [如果您不关心重复的数字,密钥可能会更短。]

有关设置 HyperSnips(非常简单)的更多信息,请参阅VSCode Advanced Custom Snippets

除了复制/粘贴之外,目前没有本地方式。

您可以使用重复粘贴

根据用户输入复制选定的文本并重复粘贴。 像 Vim 复制、粘贴和重复这样的功能。 例如,在 Vim 中,您将 select 要复制的字符,然后键入 30p 将所选文本粘贴 30 次。

Select 一个字符并使用CTRL + SHIFT + P激活您的命令面板并键入“重复粘贴”,它会提示您输入数量。

您可以为此命令分配快捷方式

您可以使用扩展名Regex Text Generator 您编写一个生成所需文本的正则表达式

在生成框中键入以下内容

foobar = "1{16}";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM