PowerShell将字符串拆分为变量

时间:2017-07-12 14:48:53

标签: powershell

我有一行文字,我希望第一个单词是一个变量,第二个单词是第二个单词,但其余的都要考虑一个单独的变量。

例如,拆分Mary had a little lamb会导致:

  • $var[1] = Mary
  • $var[2] = had
  • $var[4] = a little lamb

当我按空格分割时,如何实现这一目标?

3 个答案:

答案 0 :(得分:4)

如果您知道前两个单词的确切长度,可以使用.substring。否则,您可以使用-Split,然后在将前两个数组条目分配给变量后使用-join

$mySplit = "alpha bravo charlie delta" -split " "
$var1 = $mySplit[0]
$var2 = $mySplit[1]
$var3 = $mySplit[2..($mySplit.length+2)] -join " "

$var3的上述示例抓取-split创建的数组并获取除第一个2之外的所有条目。-join然后将数组条目重新连接成一个字符串用空格分隔每个条目。

答案 1 :(得分:4)

$a="Mary had a little lamb"
$v1,$v2,$v3=$a.split(" ",3)

split是将字符串转换为数组," 3"是分成多少部分的限制,以及" ="左边的变量列表。是什么使结果最终成为相应的变量。

PS > $v3
a little lamb 
PS >

答案 2 :(得分:1)

只需告诉Split要返回的元素数量:

$string = "Mary had a little lamb"
$var = $string.Split(" ",3)

将返回:

Mary
had
a little lamb

然后,您可以单独引用每个元素:

$var[0]
$var[1]
$var[2]