Hey!
Also, folgendes:
Ich habe eine Batch, in der ich einen String eingebe per
set /p string=
und diesen dann per echo "%string%" >> file.txt
in eine Textdatei schreibe;
nun hat der String ABER eine ZAHL darin, und diese soll JEDES MAL um 1 höher sein, als die Startzahl, was ich definiere, per
set /p zahlersetzen "Zahl die zu ersetzen ist: "
set /p zahlanzahl "Wie oft? "
was auch funktioniert, aber sehr verhuntzt.
Mit einer for-Schleife ist es mir möglich, ALLE ZAHLEN mit DER SELBEN zu ersetzen, oder aber ALLES ausser der Zahl zu löschen, aber NICHT ganz einfach den TEXT zu BEHALTEN, aber die Zahl um 1 HOCHZUZÄHLEN???
Mit einem
set text=%%j
set text=!text:(???)!
kann ich zwar die Zahlen erhöhen, aber der Text wird einfach in die Tonne getreten.
Sprich die Text sieht dann (je nachdem was ich versuche) erst (z.B.!) so aus:
"TextBlabla999Blabla"
"TextBlabla999Blabla"
"TextBlabla999Blabla"
und NACH der "Ersetzungsaktion" entweder:
"TextBlabla777Blabla"
"TextBlabla777Blabla"
"TextBlabla777Blabla" //(weil 999 mit 777 ersetzt wurde)
ODER SO:
"777"
"778"
"779" //Script löscht ALLES AUSSER der Zahl, die ersetzt wird, erhöht aber, wie angegeben, die Zahl um +1.
Also ich kann zwar die Zahl +1 erhöhen, was ich will, aber den Text, der wird nicht erkannt/gelöscht.
Oder die Zahl wird ersetzt und Text behalten, aber eben nur die Zahl mit der angegebenen Zahl, und will partout nicht um 1 erhöhen.
Könnte mir jemand so freundlich sein, und sagen ob das überhaupt möglich ist? Und wenn ja, wie?
MTVR6578 (355) 9x Beste Antwort 31x "Danke"
|