Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
[RESOLU] Remplacer un mot dans un fichier
Auteur Message
Répondre en citant
Message [RESOLU] Remplacer un mot dans un fichier 
Bonjour, je voudrais remplacer un mot ou une phrase dans un fichier (txt) de préférence avec la boucle for Wink (de préférence !)



Dernière édition par Ozachi le Dim 11 Jan 2015 - 15:45; édité 1 fois

______________________________________________________
C'est en forgeant que l'on devient un forgeron Razz
Visiter le site web du posteur
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message [RESOLU] Remplacer un mot dans un fichier 
Salut
pour t'aider, on a besoin de plus d'infos :
-Explique un peu plus
-Donne nous ton fichier texte
-Montre nous tes recherches
Okay




______________________________________________________
Cordialement,
Hugo, qui adore programmer, jouer à Minecraft, ZT2 et FSX.
Boutons-liens :
Visiter le site web du posteur Skype
Répondre en citant
Message [RESOLU] Remplacer un mot dans un fichier 
salut Very Happy

j'ai fait ce code, c'est un peu long pour ce que c'est mais bon ça marche Laughing
Par contre uniquement pour un mot et pas toute une phrase Rolling Eyes


Code:

@echo off
setlocal enabledelayedexpansion

Set mot=mot_a_remplacer
set a_remplacer=remplacer_par

set n_=1
for /f "delims=" %%$ in ('type ton.txt') do (
   set Line_!n_!=%%$
   set/a n_+=1
)
set/a LineNbr=!n_!-1
for /l %%L in (1,1,!LineNbr!) do (
   set n_=1
   for %%W in (!Line_%%L!) do (
      set Line_%%L_Word_!n_!=%%W
      set/a n_+=1
   )
   set/a Line_%%L_WordNbr=!n_!-1
)
for /l %%L in (1,1,!LineNbr!) do (
   for /l %%W in (1,1,!Line_%%L_WordNbr!) do (
      REM echo -!Line_%%L_Word_%%W!-
      if "!Line_%%L_Word_%%W!"=="!mot!" (
         set Line_%%L_Word_%%W=!a_remplacer!
      )
   )
)
for /l %%L in (1,1,!LineNbr!) do (
   set Line_%%L_=
   for /l %%W in (1,1,!Line_%%L_WordNbr!) do (
      set Line_%%L_=!Line_%%L_! !Line_%%L_Word_%%W!
   )
)

if exist out.txt del/q out.txt
for /l %%L in (1,1,!LineNbr!) do echo !Line_%%L_!>>out.txt
start out.txt



@+ Okay




______________________________________________________
Site MagicDosYoutubeFacebookVietcong 2 OlympeVietcong 2 Alliance
Visiter le site web du posteur Skype
Répondre en citant
Message [RESOLU] Remplacer un mot dans un fichier 
MagicDos a écrit:
salut Very Happy

j'ai fait ce code, c'est un peu long pour ce que c'est mais bon ça marche Laughing
Par contre uniquement pour un mot et pas toute une phrase Rolling Eyes

{{{code}}}

@+ Okay


C'est exactement ce que je souhaite, merci Wink




______________________________________________________
C'est en forgeant que l'on devient un forgeron Razz
Visiter le site web du posteur
Répondre en citant
Message [RESOLU] Remplacer un mot dans un fichier 
Cool Okay




______________________________________________________
Site MagicDosYoutubeFacebookVietcong 2 OlympeVietcong 2 Alliance
Visiter le site web du posteur Skype
Répondre en citant
Message [RESOLU] Remplacer un mot dans un fichier 
Voici une autre méthode utilisant un script Hybride BAT/Powershel et qui te permet de traiter
aussi bien des phrases que des mots :


StringReplace.bat :

Code:

:://
::// StringReplace.bat
::// By SachaDee - 2014
:://

@echo off&cls

:: ICI TU DEFINI LE NOM DU FICHIER
:: ET LES VALEURS DE REMPLACEMENT

:: LE FICHIER
set "$string=test.txt"

:: LE STRING A CHERCHER
set "$string_a remplacer=pas La main"

:: LE STRING DE REMPLACEMENT
set "$string_qui_remplace=vraiment Le pied"


:: LE CODE
(echo @echo off
 echo For /f "delims=:" %%%%a In ^(^'
 echo findstr ^/Bn "@PS" %%~nx0
 echo '^) do Set /A Line=%%%%a

 echo for ^/f  "delims=" %%%%x in  ^(^'more +%%Line%% %%^~nx0  ^^^| powershell -c -^'^) do echo %%%%x

echo pause ^& exit ^/b

echo @PS
echo $Test = [IO.File]::ReadAllText(".\%$string%"^)
echo $Sortie=$test -Replace "%$string_a remplacer%", "%$string_qui_remplace%" ^| Out-file sortie.txt
) >replace.bat

call replace.bat


Ça va te créer un fichier sortie.txt reformatté avec les changements.

Exemple :

test.txt

Citation:

Batch xoo.it c'est pas la main
Batch xoo.it c'est pas la main
Batch xoo.it c'est pas la main
Batch xoo.it c'est pas la main


et le résultat :

Code:

Batch xoo.it c'est vraiment Le pied
Batch xoo.it c'est vraiment Le pied
Batch xoo.it c'est vraiment Le pied
Batch xoo.it c'est vraiment Le pied


Okay




______________________________________________________
AffPng.exe , StringBetween.exe , Hex2Png.exe
Message [RESOLU] Remplacer un mot dans un fichier 


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