Batch variable zum bestimmten Zeichen schneiden
Hallo,
möchte gerne die Variable 'version_1' = 'ABC.DE.FGHI.JKL' zum ersten Punkt von rechts Abschneiden und in eine neue Variable übergeben.
Hier bräuchte ich z.B. als neue Variable 'version_2' die letzten drei Zeichen vor dem Punkt, also 'JKL'.
Wie man eine Variable nun X-Zeichen von rechts kürzt weiß ich schon.
Die Schwierigkeit hierbei ist, dass die Variable auch folgendermaßen heißen kann: 'A.BCDEF.GHIJK.L' oder auch 'AB.CDE.FGHIJKL'
Hier bräuchte ich z.B. nur das 'L' bzw. 'FGHIJKL' in eine neue Variable.
Vielen Dank schon mal für eure Hilfe.
möchte gerne die Variable 'version_1' = 'ABC.DE.FGHI.JKL' zum ersten Punkt von rechts Abschneiden und in eine neue Variable übergeben.
Hier bräuchte ich z.B. als neue Variable 'version_2' die letzten drei Zeichen vor dem Punkt, also 'JKL'.
Wie man eine Variable nun X-Zeichen von rechts kürzt weiß ich schon.
Die Schwierigkeit hierbei ist, dass die Variable auch folgendermaßen heißen kann: 'A.BCDEF.GHIJK.L' oder auch 'AB.CDE.FGHIJKL'
Hier bräuchte ich z.B. nur das 'L' bzw. 'FGHIJKL' in eine neue Variable.
Vielen Dank schon mal für eure Hilfe.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 561645
Url: https://administrator.de/forum/batch-variable-zum-bestimmten-zeichen-schneiden-561645.html
Ausgedruckt am: 06.04.2025 um 10:04 Uhr
5 Kommentare
Neuester Kommentar

@echo off &setlocal
for /f "delims=" %%a in ("ABC.DE.FGHI.JKL") do set "extension=%%~xa"
set "extension=%extension:~1%"
echo %extension%
=> FOR-Loop
p.s. heutzutage nutzt man für sowas gleich die Powershell wenn's Winblows ist.
$string = "ABC.DE.FGHI.JKL"
$string.Split(".")[-1]

Das was ich hier benötige, wären die Zeichen von rechts bis zum ersten Punkt.
Macht das obige doch schon, den String kannst du durch was auch immer mit punkten austauschen! Ist übrigens die gleiche Beschreibung wie oben brauchst du nicht 100 mal wiederholen ...
Bitte. Auf gelöst setzen nicht vergessen.