我想把這個字串分成兩部分:
C:\Program Files\Autodesk\DWG TrueView 2021 - English\Setup\en-us\Setup\Setup.exe /P {28B89EEF-4356-0409-0100-CF3F3A09B77D} /M AOEM /language en-US
我希望它總是在之后分裂Setup.exe,所以它應該是:
$part1 = "C:\Program Files\Autodesk\DWG TrueView 2021 - English\Setup\en-us\Setup\Setup.exe"
$part2 = "/P {28B89EEF-4356-0409-0100-CF3F3A09B77D} /M AOEM /language en-US"
應該有什么功能來做到這一點?
謝謝
uj5u.com熱心網友回復:
$string = "C:\Program Files\Autodesk\DWG TrueView 2021 - English\Setup\en-us\Setup\Setup.exe /P {28B89EEF-4356-0409-0100-CF3F3A09B77D} /M AOEM /language en-US"
$array = $string -Split "(Setup.exe)"
$array[0] $array[1]
$array[2]
可以有其他簡單的方法。這是一種方法。
uj5u.com熱心網友回復:
這里有一些替代方案供您選擇:
$string = 'C:\Program Files\Autodesk\DWG TrueView 2021 - English\Setup\en-us\Setup\Setup.exe /P {28B89EEF-4356-0409-0100-CF3F3A09B77D} /M AOEM /language en-US'
方法一:使用-split
$part1, $part2 = $string -split '^(. \.exe)\s(. )$'
$part1 # --> C:\Program Files\Autodesk\DWG TrueView 2021 - English\Setup\en-us\Setup\Setup.exe
$part2 # --> /P {28B89EEF-4356-0409-0100-CF3F3A09B77D} /M AOEM /language en-US
方法二:使用[regex].Match()
$part1, $part2 = ([regex]'(?i)^(. \.exe)\s(. )$').Match($string).Groups[1..2].Value
$part1 # --> C:\Program Files\Autodesk\DWG TrueView 2021 - English\Setup\en-us\Setup\Setup.exe
$part2 # --> /P {28B89EEF-4356-0409-0100-CF3F3A09B77D} /M AOEM /language en-US
方法3:使用-replace與方法相結合.Split()
$part1, $part2 = ($string -replace '^(. \.exe)\s(. )$', '$1|$2').Split('|')
$part1 # --> C:\Program Files\Autodesk\DWG TrueView 2021 - English\Setup\en-us\Setup\Setup.exe
$part2 # --> /P {28B89EEF-4356-0409-0100-CF3F3A09B77D} /M AOEM /language en-US
方法4:使用字串方法.IndexOf()和.Substring()
$split = $string.IndexOf('.exe')
if ($split -ge 0) {
$part1 = $string.Substring(0, $split 4)
$part2 = $string.Substring($split 5)
}
$part1 # --> C:\Program Files\Autodesk\DWG TrueView 2021 - English\Setup\en-us\Setup\Setup.exe
$part2 # --> /P {28B89EEF-4356-0409-0100-CF3F3A09B77D} /M AOEM /language en-US
uj5u.com熱心網友回復:
只是在空白處拆分并將它們重新組合在一起。您甚至可能不必將 $part2 陣列連接在一起,具體取決于您用作 -argumentlist 或與呼叫運算子一起使用。
$string = 'C:\Program Files\Autodesk\DWG TrueView 2021 - English\Setup\en-us\Setup\Setup.exe /P {28B89EEF-4356-0409-0100-CF3F3A09B77D} /M AOEM /language en-US'
$split = -split $string
$split
C:\Program
Files\Autodesk\DWG
TrueView
2021
-
English\Setup\en-us\Setup\Setup.exe
/P
{28B89EEF-4356-0409-0100-CF3F3A09B77D}
/M
AOEM
/language
en-US
$part1 = $split[0..5] -join ' '
$part2 = $split[6..$split.length] -join ' '
# $part2 = $split[6..$split.length]
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/379964.html
