考慮這個來源: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