excel - 如何在 PowerShell 中选择与特定模式匹配的对象
问题描述
因此,对于 excel csv 文件,当至少一个 cd 数字在 AD 列中的单元格不为空时(值是嗨,我也是),所以它应该看起来像这样。
但我不想删除在其广告中包含其中之一的重复 cd 编号(嗨,我也是),并且我不想删除单个 cd 编号,无论它在 AD 列中有一个空单元格还是有(嗨,我也是)在 AD 中作为值。
这是我尝试的脚本:
$GroupArray2 = @(
'hi'
'me'
'to'
)
$items4 = Import-Csv -Path 'C:\Temp\Excel6.csv' | Group-object -Property 'AD' | Where-Object count -gt 1 | Where-object {$_.'AD' -in $GroupArray2} | Foreach-object { $selections3 = $_.Group | Select-Object -Property * }
$items4 | Export-CSv -path 'C:\Temp\Excel7.csv' -NoTypeInformation
但是当我尝试它时它不会输出任何东西。任何帮助,将不胜感激!
解决方案
在检查位置之前,您需要按组分隔对象$_.'AD' -in $GroupArray2
$items4 = Import-Csv -Path 'C:\Temp\Excel6.csv' | Group-object -Property 'CD' | Where-Object count -gt 1 | ForEach-Object {$_.group} | Where-object {$_.'AD' -in $GroupArray2}
还要注意您使用哪种分隔符。您的示例 csv 包含逗号作为字符串的一部分,它也是默认分隔符。使用-Delimiter
参数 ofImport-/Export-Csv
来使用其他符号:
$items4 = Import-Csv -Path $path -Delimiter ";" | Group-object -Property 'CD' | Where-Object count -gt 1 | ForEach-Object {$_.group} | Where-object {$_.'AD' -in $GroupArray2}
$items4 | Export-CSv -path 'C:\Temp\Excel7.csv' -NoTypeInformation -Delimiter ";"
推荐阅读
- r - 每年最大数据
- vb.net - 如何使用 WebBrowser 控件下载文件
- javascript - 如何重构javascript函数以在不同函数中输出数据
- delphi - DropDownCount 不适用于 OwnerDrawFixed 样式
- javascript - 一个Diagram可以有多个linktemplates Gojs吗?
- extjs - 缩放 ExtJs 后面板不改变大小
- c++ - 用 C++ 中的对象填充列表时出现奇怪的问题?
- java - 使用运行/调试配置在 IntelliJ IDEA 中运行 JavaFX 11 Maven 项目
- ruby-on-rails - 在 CloudFoundry 的生产环境中启动多个(后台工作人员)进程
- java - Spring:在不同的端口上提供不同的路径