gpt4 book ai didi

regex - 在 bash/unix 中删除 CSV 文件所有列的空格

转载 作者:行者123 更新时间:2023-12-04 16:16:39 25 4
gpt4 key购买 nike

我有一个 CSV 文件,其中每一列都包含在实际值之前添加的不必要的额外空格。我想通过删除所有空格来创建一个新的 CSV 文件。

例如

输入 CSV 文件中的一行

 123, ste hen, 456, out put

预期输出 CSV 文件

123,ste hen,456,out put

我尝试使用 awk 来修剪每一列,但它没有用。

最佳答案

这个 sed 应该可以工作:

sed -i.bak -E 's/(^|,)[[:blank:]]+/\1/g; s/[[:blank:]]+(,|$)/\1/g' file.csv

这将删除前导空格、尾随空格和逗号周围的空格。

更新:这是执行相同操作的 awk 命令:

awk -F '[[:blank:]]*,[[:blank:]]*' -v OFS=, '{
gsub(/^[[:blank:]]+|[[:blank:]]+$/, ""); $1=$1} 1' file

关于regex - 在 bash/unix 中删除 CSV 文件所有列的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38609590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com