分割

-Split:(-cSplit 区分大小写)

一元拆分运算符 (-split <string>) 的优先级高于逗号。因此,如果向一元拆分运算符提交逗号分隔的字符串列表,将只拆分第一个字符串(第一个逗号之前的部分)。
要拆分多个字符串,请使用二元拆分运算符 (<string> -split <delimiter>)。可将所有字符串都括在圆括号内,或在变量中存储这些字符串,然后向拆分运算符提交该变量。
示例:
-split "1 2", "a b"
返回结果:
1
2
a b


"1 2", "a b" -split " "
返回结果:
1
2
a
b


-split ("1 2", "a b")
返回结果:
1
2
a
b

$a = "1 2", "a b"
-split $a
返回结果:
1
2
a
b

   

$c = "Mercury,Venus,Earth,Mars,Jupiter,Saturn,Uranus,Neptune"

$c -split ",", 5 #使用逗号为分隔符,一共最多返回5行,剩下的会都在最后一行显

#返回结果:

Mercury
Venus
Earth
Mars
Jupiter,Saturn,Uranus,Neptune

$c -split {$_ -eq "e" -or $_ -eq "p"}  #使用 e 或者 p 为分隔符

#返回结果:

M
rcury,V
nus,
arth,Mars,Ju
it
r,Saturn,Uranus,N

tun

"Mercury,Venus,Earth,Mars,Jupiter,Saturn,Uranus,Neptune" -split '[et]'  #使用e 或者 t为分隔符

#返回结果:

M
rcury,V
nus,
ar
h,Mars,Jupi

r,Sa
urn,Uranus,N
p
un

"a,b,c,d,e,f,g,h" -split ",", 3  #使用逗号拆分为3子字符串

#返回结果:

a
b
c,d,e,f,g,h

"a,b,c,d", "e,f,g,h" -split ",", 3  #将两个字符串分别拆分为3个子字符串

#返回结果:

a
b
c,d
e
f
g,h

$a = @'
1The first line.
2The second line.
3The third of three lines.
'@
$a -split "^\d", 0, "multiline"  #
按第一个数字拆分$a中的每一行。
该语句使用 Multiline 选项来识别每一行和每一个字符串的开头。
0
值表示 Max-substrings 参数的"全部返回"值。仅当指定 Max-substrings 值时才能使用如 Multiline 等选项。
使用 Multiline 模式可识别行和字符串的开头和结尾。仅当与 RegexMatch 一起使用时有效。默认设置为 Singleline,使用 Singleline 模式只识别字符串的开头和结尾

#返回结果:
The first line.
The second line.
The third of three lines.

posted @ 2015-05-10 20:28  dongdonggeorge  阅读(210)  评论(0编辑  收藏  举报