Pagina 1 van 1

powershell regex

Geplaatst: 19 jan 2023, 20:33
door conehead
Hallo,

Ik heb er zelf weinig ervaring mee maar ik heb op regex101 het volgende aangemaakt en dan wordt er effectief geselecteerd wat ik zou willen:

Code: Selecteer alles

(SH[A-Z]{4}\w+.pdf)|obasi_temp_\w+(.xlsx|.DOCX)|(PrintServlet.\(\d+.\).pdf)
giet ik dit in powershell dan worden er bijvoorbeeld enkel bestanden verwijderd die starten met obasi_temp.... maar voor de rest geeft hij nul resultaten?

Code: Selecteer alles

Get-ChildItem $Path | Where{$_.Name -Match "<(SH[A-Z]{4}\w+.pdf)|obasi_temp_\w+(.xlsx|.DOCX)|(PrintServlet.\(\d+.\).pdf)>"} | Remove-Item -WhatIf
Misschien is er hier iemand met wat meer ervaring

hieronder enkele bestanden die dienen verwijderd te worden

SHEVOH_202211211548_idrit_therapieprog_hhi.pdf

obasi_temp_ibxlsx_15246179960657_2022_11_24_10_48_23.xlsx

PrintServlet (13).pdf

Re: powershell regex

Geplaatst: 19 jan 2023, 22:14
door YordiDR
Heb je al eens geprobeerd om enkele quotes rond de regex te zetten ipv dubbele quotes?

Sent from my BE2029 using Tapatalk


Re: powershell regex

Geplaatst: 19 jan 2023, 22:46
door conehead
Dat heb ik idd al eens getest maar dan krijg ik unexpected token ...
Met bovenstaande code worden er effectief bestanden verwijderd maar die enkel die temp bestanden ...
Verwijder ik alles en beperk ik me bijvoorbeeld tot enkel die SH[A-Z]... dan wordt er geen enkel bestand gevonden via powershell, geeft ook verder geen foutmelding. Het is precies dat de regex van de website 101 niet 100% overeenkomt met die powershell... ?

Re: powershell regex

Geplaatst: 19 jan 2023, 23:22
door Sasuke
Beginnersfout ... je mag die <> niet overnemen die meekomen door de htmlstring te copieren :-)

Code: Selecteer alles

Get-ChildItem $Path | Where {$_.Name -Match "(SH[A-Z]{4}\w+.pdf)|obasi_temp_\w+(.xlsx|.DOCX)|(PrintServlet.\(\d+.\).pdf)"} | Remove-Item -WhatIf

Re: powershell regex

Geplaatst: 20 jan 2023, 08:45
door conehead
Bedankt,

Doet exact wat ik had verwacht