如何僅從第一列的 csv 記錄中刪除“//”

如何僅從第一列的 csv 記錄中刪除“//”

之前我問過如何加//.
現在我需要//從第一列中刪除。

樣本文件1

// 一些評論
// 一些解釋
//====================
100,5,3,8,,//不適用,
500,5,44,8,,,
2500,5,2,8,,//22,
//2121,5,2,8,,,
5535,5,4,6069,,,
//5844,1,4,5844,,,
5900,5,2,8,,,
//6069,5,4,8,,,

結果

// 一些評論
// 一些解釋
//====================
100,5,3,8,,//不適用,
500,5,44,8,,,
2500,5,2,8,,//22,
2121,5,2,8,,,
5535,5,4,6069,,,
5844,1,4,5844,,,
5900,5,2,8,,,
6069,5,4,8,,,

我嘗試過

sed 's/\/\///1'

awk -F',' '/\/\/[0-9][0-9][0-9]*/ {sub ("//", ""); print}'

答案1

你可以使用

sed -E 's|^//([0-9])|\1|' file

或使用標準 sed

sed 's|^//\([[:digit:]]\)|\1|' file

或者

awk '/^\/\/[0-9]/{sub(/^\/\//,"")}1' file

答案2

嘗試使用下面的 Sed 命令並且工作正常

命令

sed '4,$s/^\/\///g' filename

// some comment
// some  explanation
//===================
100,5,3,8,,//NA,
500,5,44,8,,,
2500,5,2,8,,//22,
2121,5,2,8,,,
5535,5,4,6069,,,
5844,1,4,5844,,,
5900,5,2,8,,,
6069,5,4,8,,,

相關內容