Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
[Atte]Remplacement d'une chaine de caractères par une autre.
Auteur Message
Répondre en citant
Message [Atte]Remplacement d'une chaine de caractères par une autre. 
Bonjour,je voudrais savoir comment remplacer une chaine de caractères par une autre.
par exemple (ce n'est qu'un exemple,je ne vais pas faire ça...):
Code:
REM remplacer ça :
ife! batbox.exe echo OK
REM par ça :
If Not Exist batbox.exe echo OK


Je sais que pour le faire,on doit faire :
Code:
set ligne1=ifi
echo texte en batchY : %ligne1%
set ligne=%ligne:ifi=if /i%


certes ,cela marche mais dans une boucle for ,si on a l'exemple précédant:
Code:
REM remplacer ça :
ife! batbox.exe echo OK
REM par ça :
If Not Exist batbox.exe echo OK

comment il faudra faire?

Merci!



Dernière édition par logan T le Mar 9 Aoû 2016 - 12:28; édité 2 fois

______________________________________________________
LT-S Batch explorer :Un explorateur en Batch
ConsoleINI : utilisez des fichiers INI dans vos Batch
Epileptic : un mini jeu de rapidité
Faites parler votre téléphone avec mon app android
Mon site pour voir tout mes autres programmes
Visiter le site web du posteur Skype
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message [Atte]Remplacement d'une chaine de caractères par une autre. 
Je comprend pas ce que tu veux faire mais je sais pourquoi tu veux le faire (je suis au courant de ton projet)

Moi j'aurai fais comme ça :
Code:
@echo off
set ligne=Ifi
set ligne=%ligne:Ifi=If not exist%
%ligne% teste.bat echo lol
pause





______________________________________________________
la vie est trop courte pour retirer le périphérique USB en toute sécurité...
Si la statue de la liberté lève le bras depuis 125 ans, c'est parce qu'elle cherche du réseau sur son Blackberry Torches...
Grâce à mon nouveau correcteur automatiste sur mon téléphage, je ne fais plus aucune faute d'orthodontie.
Quelqu'un a t il déjà demandé au drapeau japonais ce qu'il enregistre depuis tout ce temps ?
Visiter le site web du posteur
Répondre en citant
Message [Atte]Remplacement d'une chaine de caractères par une autre. 
Flammrock a écrit:
Je comprend pas ce que tu veux faire mais je sais pourquoi tu veux le faire (je suis au courant de ton projet)

Moi j'aurai fais comme ça :
Code:
@echo off
set ligne=Ifi
set ligne=%ligne:Ifi=If not exist%
%ligne% teste.bat echo lol
pause

Bonjour,
Non,en fait,je veux faire ce code ,mais il tourne dans une boucle for donc ça ne marche pas:
Code:
@echo off
set ligne=Ife!

::bouclefor (
set ligne=%ligne:Ife!=If not exist%
::)


ducoup,je voudrais savoir si il y a une autre façon de le faire.




______________________________________________________
LT-S Batch explorer :Un explorateur en Batch
ConsoleINI : utilisez des fichiers INI dans vos Batch
Epileptic : un mini jeu de rapidité
Faites parler votre téléphone avec mon app android
Mon site pour voir tout mes autres programmes
Visiter le site web du posteur Skype
Répondre en citant
Message [Atte]Remplacement d'une chaine de caractères par une autre. 
Peut être résolu : utiliser du VBS :
Code:
Set Args=wscript.arguments
args  = replace(args,"machin","chouette")
args  = replace(args,"ife!","if not exist")
Wscript.Echo args

boucle for pour récupérer le résultat :
Code:
for /f "skip=1" %%A in ('csript test.vbs "%ligne%" //nologo') do set ligne=%%A

après contre j'ai pas encore testé le prog... je le ferais dans 1 mois car le projet est en pause : je travaille en ce moment sur Batch United OS.
si vous pouvez le tester à ma place ,ce serais bien.




______________________________________________________
LT-S Batch explorer :Un explorateur en Batch
ConsoleINI : utilisez des fichiers INI dans vos Batch
Epileptic : un mini jeu de rapidité
Faites parler votre téléphone avec mon app android
Mon site pour voir tout mes autres programmes
Visiter le site web du posteur Skype
Répondre en citant
Message [Atte]Remplacement d'une chaine de caractères par une autre. 
Salut

fait un call dans ta boucle FOR

Code:

@echo off
set "$Ligne=ife! batbox.exe echo OK"

for /l %%a in (1=1=10) do (
   call:replace
)

echo Et Voila !!! Merci Sacha
exit/b

:replace

echo %$Ligne:ife!=If Not Exist%


Okay




______________________________________________________
AffPng.exe , StringBetween.exe , Hex2Png.exe
Message [Atte]Remplacement d'une chaine de caractères par une autre. 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch