Question : Fichier séquentiel : Enlever les espaces dans la variable

Salut là,

I AM recherchant une manière d'enlever les espaces dans une variable avec moins de code comme below.

par exemple, au lieu de :  PLACER le && A= RÉGLÉ d'A=%%A ! A : = ! le
It serait quelque chose comme :  PLACER A= ! %%A : = !

Thanks pour votre aide, MANUSCRIT du
Rene



WORKING : l'enabledelayedexpansion
set String=This du
@ECHO OFF

setlocal de ******* du de ********** du de ********** du de ********** du de ************************** du
, est, a, grand sentence.
for/>
AVANT : && RÉGLÉ A= RÉGLÉ de %%A %%B %%C %%D
A=%%A ! A : = ! && RÉGLÉ B= RÉGLÉ du
B=%%B ! B : = ! && RÉGLÉ C= RÉGLÉ du
C=%%C ! C : = !
echo du
D=%%D
) ENSUITE : ! A ! ! B ! ! C ! ! D ! le
pause


WANT POUR FAIRE N'IMPORTE QUOI DE PAREIL (MAIS DE CORSE, IL NE FAIT PAS TRAVAIL) l'enabledelayedexpansion
set String=This du
setlocal de ******* du de ********** du de ********** du de ********** du de ************************** du
, est, a, grand sentence.
for/>
AVANT : %%A %%B %%C %%D
A= RÉGLÉ ! %%A : = !
B= RÉGLÉ ! %%B : = !
C= RÉGLÉ ! %%C : = !
echo du
D=%%D
) ENSUITE : ! A ! ! B ! ! C ! ! D !
pause
class= de

Réponse : Fichier séquentiel : Enlever les espaces dans la variable

Malheureusement il n'y a aucune manière de faire la substitution variable augmentée (comme remplacer des caractères, ou extraire des caractères, etc. au moyen l'une ou l'autre variables de parm (%1, %2, %3,…) ou POUR les variables de boucle (%%A, %%B, %%C,…).  Triste mais rectifier.

Si vous voulez garder le code mainline un petit décapant vous pourriez faire cette approche using une sous-routine appelée.  Elle équilibre tous les espaces gauches ou bons de la corde passée, et stocke le résultat dans la variable appelée.

pour /f « delims= de tokens=1-5, » %%A dans ("%String%") font (
  écho AVANT : %%A %%B %%C %%D %%E
  appel : Équilibre « %%A » A
  appel : Équilibre « %%B » B
  appel : Équilibre « %%C » C
  appel : Équilibre « %%D » D
  appel : Équilibre « %%E » E
)
écho ENSUITE : %A% %B% %C% %D% %E%
pause
sortir /b

: Équilibrer la « entrée-corde » retourner-variable
  placer s=%~1
  pour /F « delims= de tokens=* » %%A en ("%s%") placent s=%%A
  pour /L %%A dedans (1.1.50) faire si « ! s : ~-1 ! le « == » » a placé le s= ! s : ~0, - 1 !
  ensemble %~2=%s%
  sortir /b

~bp
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us