2016-09-08 2 views
0

У меня есть строка, которая включает в себя как данные, так и имена файлов изображений, очерченные вкладкиКак заменить подстроки, начинающиеся с «X» и заканчивающиеся на «.tif»?

Фамилии файлов изображений 41 символов и заканчиваются расширением файла .tif (пример: X1126225548817153725411111_PPPPP_00333.tif)

Я хотел бы, чтобы удалить подстроки, которые соответствуют следующим критериям, но я не уверен, струнные трюки использовать

+0

Так что результат можно ожидать? что ты уже испробовал? –

+0

Если это одноразовая задача, вы можете использовать такую ​​утилиту, как Advanced Renamer и т. Д. – wOxxOm

+0

До сих пор я пробовал $ data [1] .Replace («X * tif», «») и многие другие варианты, но он не удаляет файл. $ data [1] .Replace ("tif", "") и $ data [1] .Replace ("X", "") корректно избавляются от символов, но я не могу понять, как заменить вся подстрока –

ответ

0

Вы можете попробовать следующее переименовать эти файлы:

get-childitem "YourDirectory\*.tif" | 
foreach { $newName = ($_.BaseName).TrimStart("X") 
      Rename-Item $_.FullName $newName } 

Basename удаляет расширение файла, а TrimStart («X») удаляет ведущий «X».

+0

Мне нужно хранить файлы так, как они есть. Я хочу, чтобы превратить мои данные из этого: X1126220122222253703437_01_13335_00001.tif \t X1126220122222253703437_02_13333_00001.tif 2 в это : 2 –

0

Я понял. Я использовал неправильный символ для регулярных выражений

Вот код:

PS C:\Users\mharper> $data[1] -Replace "X......................................tif\`t" , ""\` 
     -Replace "\`t\`t" , "`t" 
Смежные вопросы