2
我正在創建一個簡單的項目,這是一個簡單的IDE。如何使用String.replaceAll函數替換Pattern.DOTALL?
我正在檢測IDE中的源代碼(長字符串)的註釋並將其刪除。
我已經嘗試了許多正則表達式來檢測的意見和這個表達式一直工作最始終如一地爲我檢測評論:
Pattern commentsSingle = Pattern.compile("\\/\\/.*");
Pattern commentsMulti = Pattern.compile("\\/\\*.*?\\*\\/", Pattern.DOTALL);
我想修改這個意見的檢測,能夠使用String.replaceAll
評論刪除方法。
code = code.replaceAll("\\/\\/.*", "");
然而,多行註釋有Pattern.DOTALL
,所以我不能正常使用String.replceAll方法:
我可以很容易地做到這一點對單行註釋。
任何人都可以幫助修改正則表達式或調用另一種方法,以便我可以正確地替換多行註釋嗎?
一些正則表達式我曾嘗試:
("(?:/\\*(?:[^*]|(?:\\*+[^*/]))*\\*+/)|(?://.*)",""))
上述正則表達式導致計算器例外有時
TY漂亮的工作。 – user3188291