String 多重分裂
我需要一个更好的方法有什么想法吗String 多重分裂,string,powershell,split,String,Powershell,Split,我需要一个更好的方法有什么想法吗 $strOutput = "800x600, 32 bits @ 60 Hz." # Initial split $aSplitString = $strOutput.Split(",") # Get Horizontal and Vertical Length $aSplitString2 = $aSplitString[0].Split("x") $strHorizontal = $aSplitString2[0] $strVertical
$strOutput = "800x600, 32 bits @ 60 Hz."
# Initial split
$aSplitString = $strOutput.Split(",")
# Get Horizontal and Vertical Length
$aSplitString2 = $aSplitString[0].Split("x")
$strHorizontal = $aSplitString2[0]
$strVertical = $aSplitString2[1]
$aSplitString2 = $null
#Get Color Depth and Frequency
$aSplitString2 = $aSplitString[1].Split(" ")
$strColour = $aSplitString2[1]
$strFrequency = $aSplitString2[4]
不喜欢在一个字符串上使用这么多拆分函数。我还能做什么
在上面的例子中,我试图将单个分辨率大小、颜色深度和频率输入到它们的on变量中
水平=800
垂直=600
颜色=32
frequency=60我发现我们可以将一个字符数组传递给split函数。
因此,在一行中:
PS C:\Windows\system32> "800x600, 32 bits @ 60 Hz.".split(@("x",","," "))
800
600
32
bits
@
60
Hz.
一种方法是:
$strOutput = "800x600, 32 bits @ 60 Hz."
$splitted = $strOutput -replace '\D',' ' -split '\s+'
$strHorizontal = $splitted[0]
$strVertical = $Splitted[1]
$strColour = $splitted[2]
$strFrequency = $splitted[3]