Vraag : Het Dossier van de partij: Verwijder ruimten in variabele

Hallo daar,

I am een manier zoeken om de ruimten in een variabele met minder code als below.

bijvoorbeeld, in plaats van te verwijderen:  VASTGESTELDE A=%%A && VASTGESTELDE A=! A: =!
It zou iets als zijn:  VASTGESTELDE A=! %%A: =!

Thanks voor uw hulp, MANUSCRIPT
Rene



WORKING:
************************** ********** ********** ********** *******
@ECHO OFF

setlocal enabledelayedexpansion
set String=This, is, a, binnen grote sentence.

for /f „tokens=1-4 delims=,“ %%A („echo! Koord! “) (/> echo
VASTGESTELDE A=%%A && VASTGESTELDE A=! A: =!
VASTGESTELDE B=%%B && VASTGESTELDE B=! B: =!
VASTGESTELDE C=%%C && VASTGESTELDE C=! C: =!
VASTGESTELDE D=%%D
)
echo NA: ! A! ! B! ! C! ! D!
pause


WANT om IETS IN DIE AARD (MAAR VAN CORSE TE DOEN, WERKT IT NIET)
************************** ********** ********** ********** *******
setlocal enabledelayedexpansion
set String=This, is, a, binnen grote sentence.

for /f „tokens=1-4 delims=,“ %%A („echo! Koord! “) (/> echo
VASTGESTELDE A=! %%A: =!
VASTGESTELDE B=! %%B: =!
VASTGESTELDE C=! %%C: =!
VASTGESTELDE D=%%D
)
echo NA: ! A! ! B! ! C! ! D!
pause

Antwoord : Het Dossier van de partij: Verwijder ruimten in variabele

Jammer genoeg is er geen manier om de verbeterde veranderlijke substitutie (als het vervangen van karakters, of het halen van karakters, enz. met één van beide parm variabelen (%1, %2, %3,…) te doen of VOOR lijnvariabelen (%%A, %%B, %%C,…).  Droevig maar waar.

Als u de mainlinecode wilt houden een kleine reinigingsmachine kon u deze benadering doen gebruikend een geroepen subroutine.  Het maakt om het even welke linker of juiste ruimten van het overgegaane koord in orde, en slaat het resultaat in de genoemde variabele op.

voor /f „tokens=1-5 delims=,“ %%A binnen („%String%“) (
  echo VÓÓR: %%A %%B %%C %%D %%E
  vraag: Versiering „%%A“ A
  vraag: Versiering „%%B“ B
  vraag: Versiering „%%C“ C
  vraag: Versiering „%%D“ D
  vraag: Versiering „%%E“ E
)
echo NA: %A% %B% %C% %D% %E%
pauze
uitgang /b

: Het „input-koord“ van de versiering terugkeer-variabele
  vastgestelde s=%~1
  voor /F „tokens=* delims=“ %%A („%s%“) plaatste binnen s=%%A
  voor /L %%A binnen (1.1.50) doe als „! s: ~-1! „==““ plaatste s=! s: ~0, - 1!
  reeks %~2=%s%
  uitgang /b

~bp
Andere oplossingen  
 
programming4us programming4us