2016-07-25 56 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

the Matches property of the resulting object,然后抓住从该Value财产(这里使用一个简单的正则表达式):

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

对不起马蒂亚斯,我犯了一个错误,在我的问题我解析的实际字符串为“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

相关问题