我需要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