Ich muss alle String-Literale aus einer gegebenen C # -Datei extrahieren. Es wird angenommen, dass alle bedingten Kompilierungskonstanten (z. B. #if DEBUG
) falsch sind, und es kann angenommen werden, dass die Datei syntaktisch korrekt ist. Sowohl einzeilige ( "a\u1000b"
) als auch verbatim ( @"x""\y"
) Literale sollten unterstützt werden.
Zuerst habe ich versucht, reguläre Ausdrücke zu verwenden, habe dann aber erkannt, dass ich ein- und mehrzeilige Kommentare und logische Ausdrücke in #if
Direktiven richtig handhaben muss.
Bevor ich also anfing, meinen eigenen C # -Lexer zu schreiben, möchte ich Sie nach bestehenden Lösungen fragen.
Tags und Links c# lexer string-literals