Powershell 有没有简单的方法可以从“中获取最后一个数字?”;总数:955198 147.9M 6 16477 162 962959 1.0 3.4“;
我正在分析一个文本文件Powershell 有没有简单的方法可以从“中获取最后一个数字?”;总数:955198 147.9M 6 16477 162 962959 1.0 3.4“;,powershell,Powershell,我正在分析一个文本文件 $a = (Get-Content c:\tabanalys.txt | Select-String "Total" -casesensitive).line 这将返回一个字符串: Totals: 955198 147.9M 6 16477 162 962959 1.0 3.4 现在我需要得到最后一个数字“3.4”,这个数字是可变的。我正在考虑使用以下方法获取它: $a[-5..-1] 这对我来说
$a = (Get-Content c:\tabanalys.txt | Select-String "Total" -casesensitive).line
这将返回一个字符串:
Totals: 955198 147.9M 6 16477 162 962959 1.0 3.4
现在我需要得到最后一个数字“3.4”,这个数字是可变的。我正在考虑使用以下方法获取它:
$a[-5..-1]
这对我来说是可行的,但显然不是绝对正确的答案。那么,有人能给出正确的答案吗?非常感谢 另一种方式:
$a -split ' ' | select -Last 1
或者只是
($a -split ' ')[-1]
这里还有一个不涉及正则表达式fu的选项。拆分字符串(忽略空元素)并获取最后一个元素:
$a.Split(' ',[System.StringSplitOptions]::RemoveEmptyEntries)[-1]
3.4
或使用匹配运算符(正则表达式模式):
if($a -match '\d+\.\d+$') {$matches[0]}