Powershell split() vs -split - 有什么区别?

30 浏览
0 Comments

Powershell split() vs -split - 有什么区别?

在花费半小时努力后,我发现了使用不同语法来拆分带有空格的字符串时的差异。

简单字符串:

$line = "1: 2: 3: 4: 5: "

拆分示例1 - 注意从1开始的标记中多出的空格:

$ln = $line.split(":\s+")
$ln
1
 2
 3
 4
 5

拆分示例2 - 空格已经消失(应该如此)

$ln = $line -split ":\s+"
$ln
1
2
3
4
5

我怀疑这是因为第一个方法是一个.NET方法(?),而-split PS操作符在正则表达式解释方面可能有更多内置的智能。

然而,当我尝试使用": "来拆分的第一种方法时,结果也不正确。如果是.NET,它是否需要某种方式来正确解释它应该将两个字符都作为分隔符使用?

0