2013-12-01 1 views
0

Допустим, у меня есть переменная %mynumber%Повторяющиеся символы X раз в ЦМД

Я хочу переменную %mycharacter% иметь значение определенного одной буквы или символа повторенной %mynumber%

Так, если значение %mynumber% is 15 и если i echo %mycharacter% Я хочу, чтобы он возвращался, например sssssssssssssss

Если значение %mynumber% является 10 и если я echo %mycharacter% я хочу, чтобы вернуться, например, ssssssssss

Если значение %mynumber% равно 7, и если i echo %mycharacter%, я хочу, чтобы он вернулся, например. sssssss

Кроме того, вместо "s" я хочу пространства ""

ответ

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 гарантирует, что любые дополнительные (невидимые) терминальные пространства в строке НЕ включены в назначение и что используемый вами редактор не поможет устранить конечные пространства, которые вы действительно хотите.

Смежные вопросы