我试图将所有偶数文件从当前位置移动到目录“foo”,但是我在用正则表达式匹配它们时遇到了问题。
文件名的格式如下:11.txt、121.txt、342.txt文件
我目前使用的命令是:
Get-ChildItem | Where-Object {$_.Name -match '^[0-9]*[02468]$'} | Move-Item -Destination .\foo
我使用的前一个命令可以正常工作,但仅适用于两位数文件1.txt-99.txt
Get-ChildItem | Where-Object {$_.Name -match '^[0-9]+[02468]'} | Move-Item -Destination .\foo
我尝试在https://regex101.com/网站与.NET的味道,并检查了这个regex ^[0-9]*[02468]$
和它的工作正常-匹配所有偶数,但由于某种原因,我有一个问题,上面提到的PS命令...
1条答案
按热度按时间qxsslcnc1#
我以前用过的一个用于奇偶的替代方法是除法。圣地亚哥在评论中提供的解决方案也是这个问题的有效regex方法。