You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux中如何对齐包含|和,两种分隔符的文本文件内容?

解决方案

可以用sed命令轻松实现这个需求,它只会修改逗号后面没有空格的情况,完全不会干扰其他不含目标分隔符的文本:

sed -E 's/,([^ ])/, \1/g' your_file.txt

命令解释

  • -E:启用扩展正则表达式语法,让捕获组的写法更直观
  • s/,([^ ])/, \1/g:这是一个全局替换规则:
    • ,([^ ]):匹配逗号后面紧跟非空格字符的模式,用括号把后面的非空格字符捕获为一个组
    • , \1:把匹配到的内容替换成「逗号 + 空格 + 捕获到的字符」
    • g:全局执行替换,确保文本中所有符合条件的逗号都被处理

效果验证

针对你给出的示例文本:

原内容:b | b | c aaaaaaaa | b | c 1,2,3 10000,3,4
执行命令后输出:b | b | c aaaaaaaa | b | c 1, 2, 3 10000, 3, 4

可以看到,所有需要添加空格的逗号都被正确处理,而原本的|分隔格式和不含分隔符的c aaaaaaaa部分完全没有被改动,完全符合你的要求。

内容的提问来源于stack exchange,提问作者Rohan Ghige

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 08:28:31