在cmd中重复字符X次

时间:2013-12-01 02:37:00

标签: batch-file command-line cmd

假设我有一个变量%mynumber%

我希望变量%mycharacter%具有%mynumber%重复的特定单个字母或字符的值

因此,如果%mynumber%的值为15且我echo %mycharacter%我希望它返回,例如sssssssssssssss

如果%mynumber%的值为10且我echo %mycharacter%我希望它返回,例如ssssssssss %mynumber%

如果7的值为echo %mycharacter%且我sssssss我希望它返回,例如{{1}} {{1}}

另外,我想要空格“”

而不是“s”

1 个答案:

答案 0 :(得分:2)

@ECHO OFF
SETLOCAL
SET mychar=e
SET mynumber=12
FOR /l %%i IN (2,1,%mynumber%) DO CALL set "mychar=%%mychar%%%mychar%"
ECHO +%mychar%+
SET mychar=a
SET mynumber=1
FOR /l %%i IN (2,1,%mynumber%) DO CALL set "mychar=%%mychar%%%mychar%"
ECHO +%mychar%+
SET mychar=s
SET mynumber=2
FOR /l %%i IN (2,1,%mynumber%) DO CALL set "mychar=%%mychar%%%mychar%"
ECHO +%mychar%+
SET mychar=y
SET mynumber=7
FOR /l %%i IN (2,1,%mynumber%) DO CALL set "mychar=%%mychar%%%mychar%"
ECHO +%mychar%+
SET "mychar= "
SET mynumber=6
FOR /l %%i IN (2,1,%mynumber%) DO CALL set "mychar=%%mychar%%%mychar%"
ECHO +%mychar%+
GOTO :EOF

请注意分配单个空格的方法。引用set参数可确保该行上的任何额外(不可见)终端空间不包含在赋值中,并且您使用的编辑器将无助于消除您实际需要的终端空间。