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

如何用Perl正则表达式去除CSV文件中每个字段的前后空格?

用Perl正则清理CSV字段前后空格

直接用Perl一行命令就能搞定你的需求:

perl -pe 's/\s*;\s*/;/g; s/^\s+|\s+$//g' input.csv > output.csv

命令解释

  • -p:逐行读取输入文件,处理完每一行自动打印到输出
  • -e:允许直接在命令行指定Perl处理代码,无需单独写脚本文件
  • s/\s*;\s*/;/g:全局替换所有分号前后的任意空白字符(包括空格、制表符)为单个分号,精准清理分隔符周围的冗余空格
  • s/^\s+|\s+$//g:移除每行开头和结尾的所有空白字符,避免行首行尾残留多余空格

测试验证

拿你提供的原始CSV内容测试:

原始输入:

Id ;   FirstName   ;   LastName  ;    email
123;    Marc       ;   TOTO      ;    marc@toto.com 

运行命令后得到的输出:

处理后结果:

Id;FirstName;LastName;email
123;Marc;TOTO;marc@toto.com

注意事项

如果你的CSV字段内部包含合法空格(比如"Mary Ann"这种带引号的字段),这个方法完全兼容——我们只处理分号前后的空格,不会改动字段内部的内容。

内容的提问来源于stack exchange,提问作者Marc Elisabeth

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 02:50:34