Sagen Sie bitte eine Textdatei haben Sie als eine lange Zeichenfolge lesen:C# /. NET Zeichenfolge magic Kommentarzeilen aus der Textdateieingabe zu entfernen?
123 123 123
123 123 123
// Just a comment
123 123 123
123 123 123
# Just a comment
123 123 123
Sie spalten typischerweise es in so etwas zu Linien, (zB in Unity3D),
List<string> lines = new List<string>(
controlFile.text.Split(new string[] { "\r","\n" },
StringSplitOptions.RemoveEmptyEntries));
.NET Angebote eine unglaubliche Menge an String-Magie, wie Formatierung und mehr.
Ich frage mich, gibt es einige verfügbaren magischen zum einfachen Entfernen von Kommentaren?
HINWEIS - natürlich man dies mit einem regex tun kann usw. Wie SonerGönül es weist darauf hin, kann sinnvollerweise mit .Where
und .StartsWith
Meine Frage getan werden, gibt es eine Einrichtung im Universum von .NET-String Magie , die speziell "versteht" und hilft mit den Kommentaren.
Auch wenn die Antwort eines Experten "definitiv nein" ist, ist das eine nützliche Antwort.
Das Problem ist, jedes Format ein anderes Trennzeichen für Kommentare verwendet. Daher müsste die Methode parametrisiert werden, um den Typ des Kommentartrennzeichens zu akzeptieren. Und in Ihrem Beispiel haben Sie zwei gezeigt. Gibt es mehr Möglichkeiten? Oder nur diese zwei? –
Welche Möglichkeiten haben Kommentarzeilen? Beginnt nur mit '//' oder '#'? Wenn ja, können Sie etwas wie '.Where (line =>! Line.StartsWith (" // ") ||! Line.StartsWith (" # "))' vielleicht? –
Eine andere wichtige Frage ist, ob Sie * inline * -Kommentare unterstützen müssen, oder können wir annehmen, dass der Kommentar am Anfang der Zeile steht und die gesamte Zeile entfernt werden kann? –