Ich versuche, eine VBA Regex zu schreiben, um Kommentare aus Teradata SQL-Textdateien zu entfernen.VBA-Regex, um Kommentare aus Teradata SQL-Textdateien zu entfernen
Es gibt zwei Arten von Kommentaren:
1 - Das Auftreten von zwei Strichen, '-' bezeichnet den Rest der Zeile als Kommentare.
2./* xxx */ Alles zwischen '/ *' und '* /' ist Kommentare. Kommentare dieses Typs können über 1+ Zeilen verteilt werden.
Die Komplikation ist mit Text in einfachen Anführungszeichen wie ‚--Diese Striche in Apostrophe sind so ausbleiben Kommentare bezeichnen kann‘.
Ich bin neu bei Regex und der Versuch, dies herauszufinden, erweist sich als über mich hinaus. Ich habe nach dem Vorbild des negativen Lookahead gedacht.
Kann mir bitte jemand helfen?
Dies ist so weit, wie ich bekommen haben:
Typ 1:
\ - \ - [\ S \ t] * $
Typ 2:
/\ * [\ s \ S] *? \ */
Können Sie Beispiele mit Eingang und erwartete Ausgabe hinzufügen? –
Im Allgemeinen können Sie dies nicht mit regulären Ausdrücken tun. Sie müssen einen SQL-Parser irgendeiner Art verwenden. Ähnliche Frage hier: http://stackoverflow.com/questions/9842991/regex-to-remove-single-line-sql-comments. –
Ich würde lieber VBA üblichen String-Processing-Funktionen für diese Aufgabe verwenden ... – dnep