windows - wildcard i batch fil

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg spekulerede på, hvordan man tjekker for et wildcard i en batchfil


SET /p project=Enter project (XYZ\_2016\_123)


Jeg skal kunne kontrollere om det variable projekt er i formatet XYZ\_20 ?? \_ 123 hvor ?? er to cifre. Ignorer XYZ & 123 del af indgangen. I øjeblikket har jeg masser af, hvis udsagn for at kontrollere om året. Men jeg spekulerede på, om det kunne gøres med jokertegn?


s=\%project\%
if not x\%s:XYZ\_2016\_123=\%==x\%s\% GOTO MAIN
if not x\%s:XYZ\_2017\_123=\%==x\%s\% GOTO MAIN
if not x\%s:XYZ\_2018\_123=\%==x\%s\% GOTO MAIN
:: etc.

Bedste reference


prøv sådan:


echo \%s\%|findstr /r "XYZ\_20[0-9][0-9]\_123" >nul 2>nul && (
  GOTO MAIN
)


FINDSTR [4]