我在一個按順序命名的文件夾中有JPEG文件:table1.jpg,table2.jpg,table3.jpg,...,table11.jpg如何在PowerShell中將一個數字追加到RegEx區域變量中?
我需要對它們按順序進行一些處理,但是Get-ChildItem
將返回這個(即使Sort
):
table1.jpg
table10.jpg
table11.jpg
table2.jpg
table3.jpg
...
我想補充一個0
,讓他們以正確的順序:
table01.jpg
table02.jpg
table03.jpg
...
table11.jpg
我嘗試使用正則表達式使用此命令預覽新的名稱:
Get-ChildItem | % { $_.Name -replace "(.*[^0-9])([0-9]{1}\.jpg)",'$10$2' }
的想法是讓名字的前半部分沒有第一區域中的任何數字,並且一個數字加在第二區域的延伸。這將排除兩位數的文件。然後我可以用:第一個區域+ 0 +第二個區域來代替。
我的問題是「0」被認爲是10美元而不是1美元+「0」,我不知道該怎麼說。
什麼是正確的語法?我想 「$ 10 $ 2」, 「$ 1 \ 0 $ 2」, 「$ 1`0 $ 2」, '$ 1 「0」 $ 2'
這正是我錯過了,大括號。感謝您指出\ D和\ d。謝謝! 通過回答ojk也很有趣。兩者都解決了問題。 – LoTus 2014-12-04 13:23:32
你應該upvote任何答案,幫助你或提供良好的信息。這樣,你也可以給@ojk一些功勞。 – 2014-12-04 14:14:10
我想和我嘗試,但我沒有足夠的聲望呢。 – LoTus 2014-12-05 10:27:52