Java - regulärer Ausdruck, der Kommentare im Code findet

Ein bisschenSpaß diesmal mit Java. Ich möchte ein Programm schreiben, das einen Code von der Standardeingabe liest (zeilenweise, zum Beispiel), wie:

// some comment
class Main {
    /* blah */
    // /* foo
    foo();
    // foo */
    foo2();
    /* // foo2 */
}

findet alle Kommentare darin und entfernt sie. Ich versuche, reguläre Ausdrücke zu verwenden, und jetzt habe ich so etwas gemacht:

private static String ParseCode(String pCode)
{
    String MyCommentsRegex = "(?://.*)|(/\\*(?:.|[\\n\\r])*?\\*/)";
    return pCode.replaceAll(MyCommentsRegex, " ");
}

aber es scheint nicht in allen Fällen zu funktionieren, z.

System.out.print("We can use /* comments */ inside a string of course, but it shouldn't start a comment");

Irgendwelche Ratschläge oder Ideen, die sich von denen von Regex unterscheiden? Danke im Voraus.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage