2015-11-05 62 views
0

問題是刪除文本文件中的錯誤。 的誤差是 '' 後M.Dsed有條件替換單個字符csv文件

XXX 「 」M.D,「, 」ABC「,」 XXX

所需字符串是替代單一的,具有d之後。

XXX 「 」MD「, 」ABC「,」 XXX

有超過該行30場

+1

'的sed的/ 「醫學博士,」/ 「醫學博士」/ g''可能 –

回答

1

我不知道所有的情況下,但對於inits這可能工作

$ echo 'xxx","M.D,","abc","xxx' | sed -r 's/([A-Z]),/\1./' 
xxx","M.D.","abc","xxx 
+0

謝謝。簡單地說,()圍繞[A-Z]和\ 1的目的是什麼。在替換集合中。 –

+0

'()'捕獲匹配的字符,'\ 1'是指這個。基本上它是查找和替換參考搜索模式。 – karakfa

1

作爲備用溶液嘗試此命令如下:

sed 's/M.D,/M.D./g' filename 

輸出:

$ sed 's/M.D,/M.D./g' sample 

xxx","M.D.","abc","xxx