我有一个 PSCustomObject 数组包含在一个名为$attendance
.
event name date present
----- ---- ---- -------
A01 Mika 2021-02-22 1
A01 John 2021-02-22 0
B03 Mika 2021-02-24 0
B03 John 2021-02-24 1
列present
值必须修改为以下内容:
event name date present
----- ---- ---- -------
A01 Mika 2021-02-22 Yes
A01 John 2021-02-22 No
B03 Mika 2021-02-24 No
B03 John 2021-02-24 Yes
我可以用一个ForEach-Object
循环来改变它,但这会遍历整个对象。
$attendance |
ForEach-Object {
if ($_.present -eq '1') { $_.present = 'Yes' } else {$_.present = 'No' }
}
为了缩短代码,我尝试了以下变体,但无法将其折叠回$attendance
变量中。
$attendance.present.replace('1','Yes').replace('0','No')
present
是否有使用点符号来更改列值的单行或更简单的方法?