Pergunta : Lima de grupo: Remover os espaços na variável

Olá! lá,

I am que procura uma maneira de remover os espaços em uma variável com menos código como below.

por exemplo, em vez de:  AJUSTAR o && A= AJUSTADO de A=%%A! A: =! o
It seria algo como:  AJUSTAR A=! %%A: =!

Thanks para sua ajuda, CERTIFICADO do
Rene



WORKING: o enabledelayedexpansion
set String=This do
@ECHO OFF

setlocal do ******* do do ********** do do ********** do do ********** do do ************************** do
, está, a, sentence.
for/>
ANTES: && AJUSTADO A= AJUSTADO de %%A %%B %%C %%D
A=%%A! A: =! && AJUSTADO B= AJUSTADO do
B=%%B! B: =! && AJUSTADO C= AJUSTADO do
C=%%C! C: =!
echo do
D=%%D
) EM SEGUIDA: ! A! ! B! ! C! ! D! o
pause


WANT PARA FAZER QUALQUER OUTRA COISA SEMELHANTE (MAS DE CORSE, NÃO FAZ TRABALHO) o enabledelayedexpansion
set String=This do
setlocal do ******* do do ********** do do ********** do do ********** do do ************************** do
, está, a, sentence.
for/>
ANTES: %%A %%B %%C %%D
A= AJUSTADO! %%A: =!
B= AJUSTADO! %%B: =!
C= AJUSTADO! %%C: =!
echo do
D=%%D
) EM SEGUIDA: ! A! ! B! ! C! ! D!
pause
class= do

Resposta : Lima de grupo: Remover os espaços na variável

Infelizmente não há nenhuma maneira de fazer a substituição variável realçada (como a substituição de caráteres, ou a extração de caráteres, etc. com uma ou outra variáveis do parm (%1, %2, %3,…) ou PARA as variáveis do laço (%%A, %%B, %%C,…).  Triste mas retificar.

Se você quer manter o código mainline um líquido de limpeza pequeno você poderia fazer esta aproximação using uma sub-rotina chamada.  Apara todos os espaços esquerdos ou direitos da corda passada, e armazena o resultado na variável nomeada.

para delims= tokens=1-5 de /f de “,” %%A dentro (“%String%") fazem (
  eco ANTES: %%A %%B %%C %%D %%E
  chamada: Guarnição “%%A” A
  chamada: Guarnição “%%B” B
  chamada: Guarnição “%%C” C
  chamada: Guarnição “%%D” D
  chamada: Guarnição “%%E” E
)
eco EM SEGUIDA: %A% %B% %C% %D% %E%
pausa
retirar /b

: Aparar a “entrada-corda” retornar-variável
  ajustar s=%~1
  para delims=” %%A tokens=* de /F do “dentro (“%s%") ajustam s=%%A
  para /L %%A dentro (1.1.50) fazer se “! s: ~-1! o “==”” ajustou o s=! s: ~0, - 1!
  jogo %~2=%s%
  retirar /b

~bp
Outras soluções  
 
programming4us programming4us