我正在查找SED(首選)或其他可以處理正則表達式的實用程序的模式,以從file.txt中刪除不必要的-
和,
字符。用於刪除其中包含一些逗號的'減號'字符的模式
我想刪除一切看起來是這樣的:
-----------,-------------------------------------,---------,-,---------,---------
而不刪除不屬於近負任何逗號,沒有如果他們後面的數字或字母消除任何短處。
我在尋找的模式是-,
和,-
和--
(我是這麼認爲的)
科馬斯和未匹配模式優缺點,應保持不變;)
輸入的樣子此:
xxxxxxxxxxxxxxxxxx,xxxxxxxxxxxxxxxxxx,xxxxxxxxxxxxxxxxxxxxxxxx,xxxxxxxxxxxxxxxxxxxxxx,xxxxxxxxxxx,xxxxxxxxx,xxxx
------------------,------------------,----------------------------------------------------------------------------
-----------------------------------------------------,-,---,---------------------------,-----------------,---------
1999,2014,591025,xöxxxxxxx,~,~,xxxxöxxx,xxx,1103469,27-xxx-76,x,01-xxx-99,31-xxx-01,,273,321,321,2
1999,2014,591025,xöxxxxxxx,~,~,xxxx,xxxxx,1103759,13-xxx-61,x,01-xxx-99,30-xxx-01,,~,321,321,1
1999,2014,591025,xöxxxxxxx,~,~,xxxxxxx,xxxx,1109909,01-xxx-70,x,01-xxx-99,31-xxx-00,,~,321,321,1
所需的輸出:
xxxxxxxxxxxxxxxxxx,xxxxxxxxxxxxxxxxxx,xxxxxxxxxxxxxxxxxxxxxxxx,xxxxxxxxxxxxxxxxxxxxxx,xxxxxxxxxxx,xxxxxxxxx,xxxx
1999,2014,591025,xöxxxxxxx,~,~,xxxxöxxx,xxx,1103469,27-xxx-76,x,01-xxx-99,31-xxx-01,,273,321,321,2
1999,2014,591025,xöxxxxxxx,~,~,xxxx,xxxxx,1103759,13-xxx-61,x,01-xxx-99,30-xxx-01,,~,321,321,1
1999,2014,591025,xöxxxxxxx,~,~,xxxxxxx,xxxx,1109909,01-xxx-70,x,01-xxx-99,31-xxx-00,,~,321,321,1
@fedorqui工作sed的 - 一切在文件中(這是一個CSV數據文件)應該保持不變。我只需要刪除不必要的-----,----, - 字符。他們進入一種模式 - 至少有兩個缺點,一個是負號,接着是昏迷,另一個是負號,接着是負號。 – dziki 2014-11-25 09:51:21
@dziki舉一個例子。 – 2014-11-25 09:52:30
@fedorqui - 我已經用輸入和期望的輸出更新了這個問題。 – dziki 2014-11-25 10:02:05