csv - 如何使用 sed 用等号替换单词 EQUALS

标签 csv sed replace

使用sed,当=位于=内时,我尝试用单词EQUALS替换=字符key=value 对的值(以逗号分隔)。如:

DE1=this,DE2=hsajdusus,DE3=8jashn&dsjud=wkqaihwe8,DE4=yes,

在这种情况下:

DE3=8jashn&dsjud=wkqaihwe8

应该是:

DE3=8jashn&dsjudEQUALSwkqaihwe8

= 字符始终出现在“DE3”键中,该键可以位于记录中的任何位置。

我一直在努力:

sed ':a;N;$!ba;/DE3/,/,/s/=/EQUALS/2'

运气不好。

例如按住“DE3”键,然后将 = 的第二个实例替换为“EQUALS”

想法?

最佳答案

你可以试试这个sed

$ sed -E 's/(=[^=,]*)=/\1EQUALS/g' input_file
DE1=this,DE2=hsajdusus,DE3=8jashn&dsjudEQUALSwkqaihwe8,DE4=yes,

关于csv - 如何使用 sed 用等号替换单词 EQUALS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76851971/

相关文章:

python - 将 Fernet key 写入文本文件会生成字节字符串而不是 ASCII 字符串

python - 将具有不匹配键的字典列表转储到 csv 文件中

javascript - 将字符串中的空格替换为逗号

c# - 通过 log4net 可配置的敏感数据屏蔽

c# - 使用 C# 将 CSV 文件读入数组

python - 值错误: could not convert string to float in a CSV file

linux - unix中的csv文件操作并将值附加到每一行

linux - 使用 Linux 删除前 6 列

regex - 列出带有sed的mysql转储文件中的表

sql - Oracle中如何替换字符串?