Arrays 如何使用powershell获取数组中的特定字符串?

Arrays 如何使用powershell获取数组中的特定字符串?,arrays,powershell,Arrays,Powershell,我有一个文本文件。该文本文件包含此 Name(0x0)/Class(0x17,0x0)/Format(0x0,0xFFFF,0x0) 我只想获取此字符串格式(0x0,0xFFFF,0x0) 我尝试将其拆分并获取阵列号。但问题是这种格式的文本文件有时会改变。这个字符串格式(0x0,0xFFFF,0x0)并不总是在最后一个数组中,数组的总数有时也不同。像这样 Name(0x0)/Class(0x17,0x0)/Class2(0000,0000)/Format(0x0,0xFFFF,0x0) or

我有一个文本文件。该文本文件包含此

Name(0x0)/Class(0x17,0x0)/Format(0x0,0xFFFF,0x0)
我只想获取此字符串
格式(0x0,0xFFFF,0x0)

我尝试将其拆分并获取阵列号。但问题是这种格式的文本文件有时会改变。这个字符串
格式(0x0,0xFFFF,0x0)
并不总是在最后一个数组中,数组的总数有时也不同。像这样

Name(0x0)/Class(0x17,0x0)/Class2(0000,0000)/Format(0x0,0xFFFF,0x0)
or
Name(0x0)/Class(0x17,0x0)/Format(0x0,0xFFFF,0x0)/Class2(0000,0000)
我的期望是,我可以得到这个字符串
格式(0x0,0xFFFF,0x0)
,无论它在哪里。 任何人都可以帮我。非常感谢

$File = Get-Content .\PC.txt
$split = $File -split "/"
$found= $split[2]
$found
根据建议,您可以按如下方式使用:

(Select-String 'Format\(.+?\)' .\PC.txt).Matches.Value
.Matches.Value
部分通过
Select Object
输出的实例,从文件
\PC.txt
中的每个选定行提取正则表达式
格式\(.+?\)
匹配的内容

一旦实现,一个更简单的解决方案将成为可能,它只直接输出选定行的匹配部分

# Upcoming feature, not yet implemented as of PowerShell Core 7.0.0-preview.5
Select-String 'Format\(.+?\)' .\PC.txt -OnlyMatching

我也找到了这个简单的方法

$File = Get-Content .\PC.txt
$split = $File -split "/"
$found = $split -like "*Format*"
它对我很有用。

使用a和例如。