在我们的项目中,我们有AssemblyInfo.cs
这里是一些代码...
[assembly: AssemblyVersion("1.5.26.0")]
[assembly: AssemblyFileVersion("1.5.26.0")]
我想要的是版本的前三位数字。
我有一个Powershell脚本,该脚本可以获取版本,但是我只需要前三位数字
$assemblyInfoPath = "D:\PC- Downloads\AssemblyInfo.cs"
$regex = '^\[assembly: AssemblyVersion\("(.*?)"\)\]'
$assemblyInfo = Get-Content $assemblyInfoPath -Raw
$version = [Regex]::Match(
$assemblyInfo,
$regex,
[System.Text.RegularExpressions.RegexOptions]::Multiline
).Groups[1].Value
参考链接:Put Assembly Version from AssemblyInfo.cs in Web.config
有人知道我如何实现吗?
嗯...我会尝试...假设您已将源字符串保存到变量$sourceString
:
$sourceString = '[assembly: AssemblyVersion("1.5.26.0")]'
您可以切掉所有不需要的内容,并将结果转换为适当的点净版本类型:
[VERSION]$VersionString = $sourceString -replace '^.+((\d+\.){3}\d+).+', '$1'
现在您可以按名称访问所有单个元素:
$VersionString.Major
$VersionString.Minor
$VersionString.Build
$VersionString.Revision
$VersionString
结果将是这样:
1
5
26
0
Major Minor Build Revision
---- - ---- - ---- - --------
1 5 26 0