-1
字符我有一個名爲像多個文件夾:FirstName_LastName(12345)
替換文件夾名稱並在括號中
我想刪除以外的所有括號給12345
。
我認爲這可行,但它說正則表達式模式*(*)
無效。
Get-ChildItem '*(*)' | Rename-Item -newname { $_.name -Replace '*(*)','*' }
我使用Windows PowerShell。
字符我有一個名爲像多個文件夾:FirstName_LastName(12345)
替換文件夾名稱並在括號中
我想刪除以外的所有括號給12345
。
我認爲這可行,但它說正則表達式模式*(*)
無效。
Get-ChildItem '*(*)' | Rename-Item -newname { $_.name -Replace '*(*)','*' }
我使用Windows PowerShell。
-replace
以正則表達式模式爲參數,在正則表達式中,*
是一個量詞,意思是「0或更多」。您還需要逃離()
:
Get-ChildItem '*(*)' | Rename-Item -newname { $_.name -Replace '.*\((.*)\)','$1' }
$1
是反向引用第一個捕獲組,即。無論是否匹配.*
在(.*)
模式的一部分
非常有幫助的解釋,謝謝! –
這個命令單獨'Get-ChildItem'*(*)''的作品? – Hackerman
是的,如果我命名這些項目,它會返回正確的項目。 –
'$ _。Name -replace'。* \((。*)\)','$ 1'' –