2016-07-25 2 views
0

У меня есть строка в файле, как это:извлечь точное слово из строки в PowerShell

<a href="DevOpsPortal-20160630_142543.zip">DevOpsPortal-20160630_142543.zip</a>   30-Jun-2016 14:26 3.71 MB 

, из которого я хочу слово evOpsPortal-20160630_142543.zip в одиночку в качестве вывода. Я попытался с помощью команды

Get-Content .\file.txt | Select-String "[a-zA-Z]+-[0-9]+-[0-9]+-[0-9]+-[0-9]+-[0-9]+-[0-9]+.zip" 

, но то, что он вернулся был "DevOpsPortal-01-07-2016-15-18-56.zip 05-июль-2016 11:16 3,60".

Как я мог получить только ожидаемое слово из этой строки?

ответ

0

Grab the Matches property of the resulting object, а затем захватить Value имущество от этого (здесь, используя более простые регулярки рисунка):

$myString = Get-Content .\file.txt |Select-String "\w+-\d+_\d+\.zip" |ForEach-Object { $_.Matches.Value } 
+0

Sorry Матиас, я сделал ошибку в моем вопросе фактической строкой я разбор является «DevOpsPortal-13-07-2016-12-51-40.zip.md5» из которого я хочу только DevOpsPortal-13-07-2016-12-51-40.zip. Можете ли вы мне помочь – Rajagopalan

+0

@Rajagopalan Ответ все тот же :) Вы пробовали? –

+0

Я попытался заменить «_» на «-», но теперь он возвращает только 12-51-40 .zip – Rajagopalan

Смежные вопросы