2016-07-07 11 views
0

と一致します。PowerShellの正規表現は、文字列が与えられた文字列

$assemblyVersion = '[assembly: AssemblyFileVersion("8.0.0.866")]' 

私はアセンブリ番号を見つける正規表現を持っている:

(\d+\.)(\d+\.)(\d+\.)(\*|\d+) 

これらの行は、一致が見つかったことを確認:

$extractedVersion = $assemblyVersion -match "(\d+\.)(\d+\.)(\d+\.)(\*|\d+)"; 

どのように元の文字列$assemblyVersionから一致を抽出しますか?私は非常にあなたがそれを行う方法取得しないthis articleを読む

...

私が試した:

$assemblyVersion 

$extractedVersion = $assemblyVersion -match "?<assembly>(\d+\.)(\d+\.)(\d+\.)(\*|\d+)"; 

Write-Host "Extracted " $extractedVersion["assembly"] 

は動作しません。

正規表現が最適でない可能性があります。

このstackoverflowのanswer

+0

を私はすでにあなたが参照した質問は私の質問に答えていないことを言った...それはありません回答。私は答えを掲載しました... –

答えて

0

を助けていない、私はそれを得た:

$assemblyVersion = '[assembly: AssemblyFileVersion("8.0.0.866")]' 

$assemblyVersion -match "(\d+\.)(\d+\.)(\d+\.)(\*|\d+)"; 

Write-Host "Extracted " $matches[0]