PowerShell 技能连载 - 移除空的数组元素(第 2 部分)

如果您想彻底移除空的数组元素(而不需要关心任何空属性),以下是一些性能根本不同的几种实现:

1
2
3
4
5
6
7
8
9
10
11
12
13
# create huge array with empty elements
$array = 1,2,3,$null,5,0,3,1,$null,'',3,0,1
$array = $array * 1000

# "traditional" approach (6 sec)
Measure-Command {
$newArray2 = $array | Where-Object { ![string]::IsNullOrWhiteSpace($_) }
}

# smart approach (0.03 sec)
Measure-Command {
$newArray3 = foreach ($_ in $array) { if (![String]::IsNullOrWhiteSpace($_)){ $_} }
}

PowerShell 技能连载 - 移除空的数组元素(第 2 部分)

http://blog.vichamp.com/2019/02/07/removing-empty-array-elements-part-2/

作者

吴波

发布于

2019-02-07

更新于

2022-07-06

许可协议

评论