我需要PowerShell腳本的幫助。幫助PowerShell獲得部分價值
我有一個值 - 2.0.0.0(它可能是與3個句號分隔的任何值)
我想剛纔得到的前三個數字,例如2.0.0
使用PowerShell,怎麼我可以這樣做嗎?
我需要PowerShell腳本的幫助。幫助PowerShell獲得部分價值
我有一個值 - 2.0.0.0(它可能是與3個句號分隔的任何值)
我想剛纔得到的前三個數字,例如2.0.0
使用PowerShell,怎麼我可以這樣做嗎?
正則表達式是一種靈活的方式來做到這一點:
"1.2.3.4" -replace "(.*)\.(.*)\.(.*)\.(.*)",'$1.$2.$3'
或吉文利維的回答啓發:
你可以使用toString方法與三場的場數:
([version]"1.2.3.4").tostring(3)
像這樣:
$a = "2.0.0.0"
$a.Remove($a.LastIndexOf('.'))
2.0.0
什麼都沒有錯其他的答案,而只是表現出更多的多樣性:
[string]::Join('.', '2.0.0.0'.Split('.')[0..2])
這裏的另一種方式:
PS> '2.0.0.0'.split('.')[0..2] -join '.'
2.0.0
順便說一句,你可以將它轉換爲system.version對象並使用它的屬性:
PS> [version]'2.0.0.0'
Major Minor Build Revision
----- ----- ----- --------
2 0 0 0
Oooh ...和「現在你有兩個問題」解決方案勝出。 :) – EBGreen