sed 正則表示法刪除程式註解 - Linux

Barb Cronin avatar
By Barb Cronin
at 2019-02-06T01:52

Table of Contents


https://chromium.googlesource.com/external/webrtc/+/d60d06a9f971a36c9a51ff9919850cffb993893c/webrtc/sdk/android/api/org/webrtc/VideoCapturerAndroid.java


以這檔案舉例下面正則表示法會刪除 // , /* */ , 跟空白行

sed -e '/\*/d' -e '/\/\//d' -e '/^\s*$/d' VideoCapturerAndroid.java

但是有個問題是像是下面這兩種註解會把整行程式碼刪除~

VideoCapturerAndroid.create(name, eventsHandler, false /*captureToTexture */);
VideoCapturerAndroid.create(name, eventsHandler, false); // captureToTexture

變我希望只刪除註解部份變成下面這樣

VideoCapturerAndroid.create(name, eventsHandler, false);

這樣sed正則有辦法做到嘛?

https://blog.csdn.net/JairDavis/article/details/53675669

上面網址提到用gedit編輯器使用正則 /\*{1,2}[\s\S]*?\*/ 取代成空白是可以

但是我有大量檔案需要做 希望能用sed + find 做

謝謝

--
Tags: Linux

All Comments

Dora avatar
By Dora
at 2019-02-07T23:15
在你sed的規則前面再新增取代規則,例:
Andy avatar
By Andy
at 2019-02-08T10:44
sed -e 's/\/\*.*$//' -e 's/\/\/.*$//' -e 你已寫
Olive avatar
By Olive
at 2019-02-08T17:27
的規則。
Hedda avatar
By Hedda
at 2019-02-12T23:54
不過我覺得-e '/\*/d'應該會誤刪到非註解行。跨行註
Mason avatar
By Mason
at 2019-02-16T18:08
解的部分,建議參考sed流程控制的相關資料。
Charlie avatar
By Charlie
at 2019-02-17T13:41
我覺得應該要用取代方式
/\*{1,2}[\s\S]*?\*/ 取代成空白
Adele avatar
By Adele
at 2019-02-20T20:46
下載 https://bit.ly/2TB3eKP
sed -nf remccoms3.sed VideoCapturerAndroid.java
Kumar avatar
By Kumar
at 2019-02-25T06:22
sed -e 's/\/\/.*//g' -e 's/\/\*.*\*\///g' VideoCa*.java

docker容器內的NIS該如何讓其他Host連到

Tristan Cohan avatar
By Tristan Cohan
at 2019-02-05T17:03
※ 引述《ShenJing (ShenJing)》之銘言: : 大家好,不好意思又來發問, : 想請問若想在 docker container 中架設 NIS Server, : 該如何讓其他台主機連上(ypbind)呢? : 我先描述目前環境、嘗試過的方法、卡住的地方: : ---目前設備--- : 總共2 ...

最近網路上找到能正常玩惡靈古堡2重製版的方法

Yedda avatar
By Yedda
at 2019-01-31T12:18
這篇幫自己備份用,以免未來自己忘記怎麼做。 以下方法是使用 Valve 的 Proton3.16-6 BETA 來達成的。 發行版是以 Ubuntu 18.04.1 為例 --------------------------------------------------------------------- ...

透過VPN登入ssh

Isabella avatar
By Isabella
at 2019-01-29T21:01
最近在IP分享器上弄了openVPN, 從手機連上VPN後, 可以登入FreeBSD的ssh, 但是不能登入Debian的ssh, 請問Debian的sshd_config需要修改哪個環節, 才可以讓Debian可以允許VPN端登入? -- 孔明受命造箭,諧魯肅登船進發,當夜五更時候,船已近曹操水寨。 孔明 ...

docker容器內的NIS該如何讓其他Host連到

Jack avatar
By Jack
at 2019-01-29T20:06
大家好,不好意思又來發問, 想請問若想在 docker container 中架設 NIS Server, 該如何讓其他台主機連上(ypbind)呢? 我先描述目前環境、嘗試過的方法、卡住的地方: ---目前設備--- 總共2台實體主機,其中1台為 Docker host(開個container架 ...

檔案名稱後面有*及@

Irma avatar
By Irma
at 2019-01-29T10:05
小弟在Windows下使用zsh及fish shell 下了 % cat /etc/shells後顯示以下shell # /etc/shells: valid login shells /bin/sh /bin/bash /bin/rbash /bin/dash /usr/bin/tmux /usr/bi ...