Avatar billede Dan Elgaard Ekspert
05. september 2024 - 11:08 Der er 4 kommentarer og
1 løsning

Trim tekst i batch script

I en variable i et batch script har jeg en variabel (%TT), der gemmer en kort tekst streng.

Denne korte tekst streng indeholder mellemrum (ASCII-32), linjeskift (ASCII-10) og return (ASCII-13).

Hvordan får jeg disse tre tegn fjernet fra min tekst streng ???
Avatar billede ejvindh Ekspert
05. september 2024 - 14:45 #1
Nu er det længe siden, jeg har bikset med batch, og jeg har ikke pt et windows-miljø, så følgende er ikke testet. Men...

Ifølge her:
https://www.geeksforgeeks.org/batch-script-remove-all-spaces/
...kan man manipulere strenge vha ":<det-du-vil-have-væk>=". Så mon ikke følgende kunne virke:

set str=<din streng>
set str=%str: =% [fjerner spaces]
set str=%str:\n=% [fjerner cr]
set str=%str:\r=% [fjerner lf]
Avatar billede Dan Elgaard Ekspert
10. september 2024 - 09:14 #2
Undskyld min lidt forsinket tilbagemelding - jeg var lige på en miniferie :-)

Anyway, lige nøjagtig den løsning har jeg selv forsøgt, og det virker ikke.

Så, enten gør jeg noget galt, eller også virker den løsning bare ikke?
Avatar billede ejvindh Ekspert
10. september 2024 - 14:55 #3
Nu er det jo ikke voldsomt meget info, du giver mig at arbejde med. Men umiddelbart vil jeg sige, at mit forslag i hvert fald burde virke for mellemrummene. I forhold til newlines, kan jeg se, at de fleste anbefaler, at man smider variablen ind i en midlertidig fil, og så hente variablen tilbage.

Se fx her:
https://superuser.com/a/1513226
Avatar billede Dan Elgaard Ekspert
10. september 2024 - 15:28 #4
Foranlediget af dit svar gik jeg mit script igennem igen, og må med skam erkende, at det var en fejl-40...
...jeg hoppede direkte til min :SKRIV label og ikke først til min :TRIM label.

Dumme mig - tak for hjælpen :-)
Avatar billede ejvindh Ekspert
10. september 2024 - 15:29 #5
Alt i orden. Godt du fik det til at virke :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester