考虑这个来源:AWK - 具有领域相同的字符分隔符解析文本
field1;field2;"data;data field3";field4;"data;data field5";field6
field1;"data;data field2";field3;field4;field5;"data;data field6"
正如你可以看到,字段分隔符正在某些领域内使用,"
之间封闭。我不能直接用awk
解析,因为没有办法避免不必要的分裂,至少我没有找到办法。此外,这些特殊领域的行内可变位置,他们可以发生一次,两次,4次等。
我想到了一个解决方案,涉及预解析步骤,在那里我用这些字段替换;
某种形式的代码。问题是sed
/awk
执行贪婪REGEX
匹配。所以在上面的例子中,我只能在每行中用引号引起来的最后一个字段中替换;
。
如何匹配每个引号的实例并替换其中的特定;
?我不想用perl
或python
等
它是什么,你想一次哟做分号你把田地分开了吗?为什么你不想使用'perl'?它只是另一个像'awk'这样的工具,可以在命令行中使用......通过'GNU awk'你可以使用https://www.gnu.org/software/gawk/manual/html_node/Splitting-By-Content .html#按内容分割 – Sundeep