我有一个巨大的 csv 文件(数万行),需要根据不同的条件进行过滤。在尝试寻找合适的 CSV 编辑器后,我决定使用 LibreOffice Calc。CSVed 很棒,但它不支持 UTF-8 或用于高级过滤的宏。
因此,有 4 列,其中 3 列包含数字(带有小数),1 列包含文本。
我正在尝试找到一种使用宏代码删除行的方法。我也可以使用过滤器实现所需的行为,但一遍又一遍地输入所有过滤值很烦人,而且似乎没有办法导出过滤器并反复使用它。
应删除以下行:
文本列(A 列)中不包含特定单词的行。该列中使用了几千个不同的单词,我只想保留该列中包含大约 30 个单词的行。
此外,其他列的数字应大于 3.8(B 列)、4.5(C 列)且小于 20(C 列)。
行删除类型为“上移”。
希望我已经解释清楚了。非常感谢您的帮助!
答案1
我知道这并没有回答你的问题,OOcalc 是一个很棒的工具,但也许你没有看过CSV修复? 在我看来,这绝对是一个“合适的 CSV 编辑器”,只是不是一个 GUI 工具;它通过控制台工作。但是,这使得将参数编写到批处理文件中以供定期重复使用变得很容易,并且它支持包含和排除操作的正则表达式和数字范围。