【发布时间】:2016-01-26 13:36:24
【问题描述】:
我有根据特定条件替换采购订单中的双引号(制表符\管道分隔)的特定要求。源文件中的示例记录如下所示:
Record 1 : Item1|length 24.0" width 21"|Yes
Record 2 : Item2|"Length 25.0
Width 26.0"|No
如上所示,第二条记录在描述中有一个换行符,并用双引号括起来。 我想替换所有其他字段中的双引号,不受双引号的限制,例如记录 1 的描述字段中。
我的结果应该是这样的:
Record 1 : Item1|length 24.0 width 21|Yes --> Double quotes removed
Record 2 : Item2|"Length 25.0
Width 26.0"|No --> Double quotes left as such
如何使用 sed 解决这个问题?
【问题讨论】:
-
我使用以下命令匹配了整个描述字段:sed -e 's/\t[^\t]*"[^\t]*\t//g' file.txt。我'正在寻找仅删除匹配模式中的双引号的方法(我正在使用制表符分隔文件进行测试)