使用 Powershell 将目录路径 (String) 拆分为两个字符串
Split a Directory Path (String ) into two strings using Powershell
我是 Powershell 的新手,我花了一整天的时间研究如何拆分字符串
我有这个字符串路径
RootFolder\Subfolder1\SubFolder2\SubFolder3
我想将其拆分为两个字符串,以便第一个字符串包含 RootFolder,第二个字符串包含字符串的其余部分。
例如:RootFolder\Subfolder1\SubFolder2\SubFolder3
$rootFolder = RootFolder
$subFolders = Subfolder1\SubFolder2\SubFolder3
提前致谢!
这里有几个方法供您参考:
使用字符串的 Split()
方法
$root, $path = "RootFolder\Subfolder1\SubFolder2\SubFolder3".Split("\", 2)
$root # --> RootFolder
$path # --> Subfolder1\SubFolder2\SubFolder3
使用字符串的 IndexOf()
方法
$folder = "RootFolder\Subfolder1\SubFolder2\SubFolder3"
$index = $folder.IndexOf("\")
$root = $folder.Substring(0, $index)
$path = $folder.Substring($index + 1)
$root # --> RootFolder
$path # --> Subfolder1\SubFolder2\SubFolder3
或者甚至是
$folder = "RootFolder\Subfolder1\SubFolder2\SubFolder3" -split '\'
$root = $folder[0]
$path = $folder[1..($folder.Count -1)] -join '\'
$root # --> RootFolder
$path # --> Subfolder1\SubFolder2\SubFolder3
一种选择是使用拆分运算符:
$splitPath = 'RootFolder\Subfolder1\SubFolder2\SubFolder3' -split '\', 2
这给出了这个输出:
$splitPath
RootFolder
Subfolder1\SubFolder2\SubFolder3
您可以像这样访问各个部分:
$splitPath[0]
RootFolder
如果路径以盘符开头(例如C:\RootFolder\Subfolder1\SubFolder2\SubFolder3
)而您想忽略它,只需增加子字符串数:
$splitPath = 'C:\RootFolder\Subfolder1\SubFolder2\SubFolder3' -split '\', 3
$splitPath
C:
RootFolder
Subfolder1\SubFolder2\SubFolder3
我是 Powershell 的新手,我花了一整天的时间研究如何拆分字符串 我有这个字符串路径
RootFolder\Subfolder1\SubFolder2\SubFolder3
我想将其拆分为两个字符串,以便第一个字符串包含 RootFolder,第二个字符串包含字符串的其余部分。
例如:RootFolder\Subfolder1\SubFolder2\SubFolder3
$rootFolder = RootFolder
$subFolders = Subfolder1\SubFolder2\SubFolder3
提前致谢!
这里有几个方法供您参考:
使用字符串的 Split()
方法
$root, $path = "RootFolder\Subfolder1\SubFolder2\SubFolder3".Split("\", 2)
$root # --> RootFolder
$path # --> Subfolder1\SubFolder2\SubFolder3
使用字符串的 IndexOf()
方法
$folder = "RootFolder\Subfolder1\SubFolder2\SubFolder3"
$index = $folder.IndexOf("\")
$root = $folder.Substring(0, $index)
$path = $folder.Substring($index + 1)
$root # --> RootFolder
$path # --> Subfolder1\SubFolder2\SubFolder3
或者甚至是
$folder = "RootFolder\Subfolder1\SubFolder2\SubFolder3" -split '\'
$root = $folder[0]
$path = $folder[1..($folder.Count -1)] -join '\'
$root # --> RootFolder
$path # --> Subfolder1\SubFolder2\SubFolder3
一种选择是使用拆分运算符:
$splitPath = 'RootFolder\Subfolder1\SubFolder2\SubFolder3' -split '\', 2
这给出了这个输出:
$splitPath
RootFolder
Subfolder1\SubFolder2\SubFolder3
您可以像这样访问各个部分:
$splitPath[0]
RootFolder
如果路径以盘符开头(例如C:\RootFolder\Subfolder1\SubFolder2\SubFolder3
)而您想忽略它,只需增加子字符串数:
$splitPath = 'C:\RootFolder\Subfolder1\SubFolder2\SubFolder3' -split '\', 3
$splitPath
C:
RootFolder
Subfolder1\SubFolder2\SubFolder3