C# Zeilenkommentar logisch entfernen
-
Hallo Community,
Ich habe vor einen Kommentarparser zu schreiben.
Ich habe es bereits geschafft, Multiline-Kommentare zu entfernen.
Nun habe ich vor einzelne Zeilenkommentare zu entfernen.
Das Konzept steht bereits, ist aber noch nicht umgesetzt wegen fehlenden Wissen.
Ein Bild findet man hier: http://www.opentp.org/images/cpp/konzept.jpg
Wie wäre dieses Konzept mit Quellcode umzusetzen?
Ratschläge? Lösungen? Tipps?
Mit freundlichen Grüßen.
-
Was ist mit:
public static void WriteTree(TextWriter writer) { writer.WriteLine(@" //\\"); writer.WriteLine(@" // \\"); writer.WriteLine(@" // \\"); writer.WriteLine(@" ---++---"); writer.WriteLine(@" ||"); writer.WriteLine(@" O_P\/__I"); }
Hier ist "//" in einem String, aber kein Kommentarzeichen.
Das Regex muss also deutlich komplexer werden.
Sonst schau dir mal die Regexe von bekannten Javascript C# Code Syntax Highlightern o.ä. (Lizenz ggf. beachten).
-
Hallo,
warscheinlich habe ich mich etwas undeutlich ausgedrückt.
Nun, ich habe hier einen Beispielquellcode aus Java\1:
http://www.opentp.org/images/cpp/js.js
Unabhängig von dem Inhalt, sollen alle Kommentare in diesem Quellcode entfernt werden. Dabei habe ich mir dieses Konzept aufgestellt (1.Beitrag-Link1).
Das Problem ist, wie ich dieses umsetzen kann, OHNE die Links in den dort geschriebenen Strings, zu entfernen.
Mit freundlichen Grüßen.
-
Wie wäre es mit alles was als Kommentar erkannt wird mit einer Regex für links überprüfen, falls diese nicht als link erkannt werden raus löschen.
-
string t_s = "a32;//Dies ist ein Kommentar\nweb.OpenUrl(\"http:\\www.seite.de\");//Auch ein Kommentar\nx=3;//http:\\www.zeugs.de\nstring y = \"So sieht ein Kommentar aus: //Ein Kommentar\";\n"; Console.WriteLine(t_s); Regex reg = new Regex(".*?[^:](//.*)"); string r = t_s; foreach (Match m in reg.Matches(t_s)) { r = r.Replace(m.Groups[1].Value,""); } Console.WriteLine(r); Console.ReadKey();
Dieser Regex macht was du wolltest und die letzte Zeile des Testtextes zeigt dir das Problem das Rhombicosidodecahedron dir aufzeigen wollte
-
Hallo,
ich möchte mich für eure freundliche Unterstützung bedanken!
Ganz besonders "Mr XYZ32".
Theoretisch gesehen sollte ich deine Schuhe jahrelang plank polieren!
Vielen vielen Dank! Dein Code habe ich mir angepasst und er funktioniert bestens!!!
Mit freundlich Grüßen,
TheDavinciKarl.