我有一行文字,我希望第一个单词是一个变量,第二个单词是第二个单词,但其余的都要考虑一个单独的变量。
例如,拆分Mary had a little lamb
会导致:
$var[1] = Mary
$var[2] = had
$var[4] = a little lamb
当我按空格分割时,如何实现这一目标?
答案 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]