Регулярное выражение файла переименования файла Powershell - PullRequest
1 голос
/ 29 апреля 2020

У меня в папке много файлов .pdf с форматом имен случайного кода с пробелом whatevername, начинающимся с U.pdf, и я хочу удалить любое имя до U.

Пример Формат имени:

Alex U153569.pdf -> должен быть переименован в U153569.pdf

Это то, что я до сих пор:

foreach ($test in $testpdf) {
    Get-ChildItem -Filter *.pdf | Rename-Item -NewName { $_.name -Replace ????????? }
}

Что должно быть правильный?

Ответы [ 2 ]

0 голосов
/ 29 апреля 2020

Без тестирования вы сможете использовать оператор разбиения (нет необходимости в регулярном выражении). Вы можете разделить пробел, как показано ниже, и индексировать во второе разделение [1]

$testpdf = Get-ChildItem *.pdf
foreach ($test in $testpdf) {
    Rename-Item $test.name -NewName (($test.name -split " ")[1])
}
0 голосов
/ 29 апреля 2020

Это должно работать:

$_.name -Replace '.*\s(?=U)'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...