【问题标题】:Removing spaces after all commas所有逗号后删除空格
【发布时间】:2012-05-16 16:53:34
【问题描述】:

我有一个 CSV 文件,每个逗号后都有一个空格。我希望删除每个逗号后的空格,并尝试以下操作:

sed -e 's/ ,/,/g' local.csv > localNoSpaces.csv

但这只会删除每行第一个逗号后的空格。如何删除所有逗号后的空格?

谢谢。

【问题讨论】:

  • 之后,我有 Uudated 问题。谢谢。

标签: regex sed


【解决方案1】:

以防万一空格不是空格,而是您可以使用的制表符和空格

 sed -e 's/\s\+,/,/g' local.csv > localNoSpaces.csv

或者如果它们在每个逗号之后使用

 sed -e 's/,\s\+/,/g' local.csv > localNoSpaces.csv

【讨论】:

    【解决方案2】:

    您的正则表达式会删除逗号之前的空格,而不是逗号之后的空格:

    sed -e 's/, /,/g' local.csv > localNoSpaces.csv
    

    如果可以有多个空格,请使用+ 量词:

    sed -e 's/, \+/,/g' local.csv > localNoSpaces.csv
    

    【讨论】:

    • 谢谢。但是如果我有一个逗号后跟多个空格怎么办?
    • @dublintech:如果有更多空格,请使用s/,[ ]\+/,/g
    猜你喜欢
    • 2012-12-03
    • 1970-01-01
    • 2021-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多