Regex powershell正则表达式选择变量中的字符串
我试图创建一个脚本,选择公司计算机主机名中的四个数字 我在一个regex网站上测试了regexRegex powershell正则表达式选择变量中的字符串,regex,powershell-2.0,Regex,Powershell 2.0,我试图创建一个脚本,选择公司计算机主机名中的四个数字 我在一个regex网站上测试了regex'\d{4}',选择这四个数字效果很好。但当与powershell一起使用时,y只能获得$true或$false 我需要将这4个数字保留在一个变量中,以便以后使用,但我尚未实现 有什么想法吗 $machinename = "mac0016w701" $test = $machinename -match '\d{4}' $test2= Select-String -Pattern '\d{4}' -i
'\d{4}'
,选择这四个数字效果很好。但当与powershell一起使用时,y只能获得$true或$false
我需要将这4个数字保留在一个变量中,以便以后使用,但我尚未实现
有什么想法吗
$machinename = "mac0016w701"
$test = $machinename -match '\d{4}'
$test2= Select-String -Pattern '\d{4}' -inputobject $machinename
$test2
-match
是一个返回真/假的运算符,因此您可以在测试中使用它。如果需要正则表达式中的值,它将设置神奇变量$Matches
,例如
PS D:\> 'computer1234' -match '\d{4}'
True
PS D:\> $matches[0]
1234
或者,您可以使用:
[regex]::Matches('computer1234', '\d{4}').Value