Java — регулярное выражение для поиска комментариев в кодеJAVA

Программисты JAVA общаются здесь
Anonymous
Java — регулярное выражение для поиска комментариев в коде

Сообщение Anonymous »

На этот раз немного развлечений с Java. Я хочу написать программу, которая считывает код из стандартного ввода (например, построчно), например:

Код: Выделить всё

// some comment
class Main {
/* blah */
// /* foo
foo();
// foo */
foo2();
/* // foo2 */
}
находит в нем все комментарии и удаляет их. Я пытаюсь использовать регулярные выражения и сейчас сделал что-то вроде этого:

Код: Выделить всё

private static String ParseCode(String pCode)
{
String MyCommentsRegex = "(?://.*)|(/\\*(?:.|[\\n\\r])*?\\*/)";
return pCode.replaceAll(MyCommentsRegex, " ");
}
но, похоже, это работает не во всех случаях, например:

Код: Выделить всё

System.out.print("We can use /* comments */ inside a string of course, but it shouldn't start a comment");
Есть какие-нибудь советы или идеи, отличные от регулярного выражения?
Заранее спасибо.

Подробнее здесь: https://stackoverflow.com/questions/165 ... ts-in-code

Вернуться в «JAVA»