Это немного рискованно и может потерпеть неудачу, если сами комментарии могут содержать нечетное количество кавычек. Но если это не проблема, вы можете поискать //
s, за которыми следует четное число кавычек, тем самым гарантируя, что вы не находитесь внутри строки:
//(?:[^"\r\n]*"[^"\r\n]*")*[^"\r\n]*$|/\*.*?\*/
Второй вариант соответствует стандартному, неопубликованному /*...*/
комментариям.
В Java:
Pattern regex = Pattern.compile("//(?:[^\"\r\n]*\"[^\"\r\n]*\")*[^\"\r\n]*$|/\\*.*?\\*/", Pattern.DOTALL | Pattern.MULTILINE);