Guten Morgen
Mit folgendem Quick and Dirty Regexkonnte ich bei diesem Patternsed 's/\(.*\)/& \*\//g;s/\/\//\/\*/g' pattern
alle // Kommentare durch /* Kommentar */ ersetzen.// foo
// baz spam qnx
// grrr
Leider frisst der obige Ausdruck aber zuviel. Nur * wird z.B. auch
erwischt und das ist in C natuerlich Mist
Folgendes Vorgehen habe ich mir ueberlegt. (kann redundant sein)
wenn schon /* oder */ dann skippe diese Line
wenn schon nur / oder * dann skippe diese Line
opt. wenn /*/* */*/ dann skippe diese Line
opt. wenn multilinecomment (suche nach \n\r) dann skippe diese Line
solange wie line matches // und nur //
s'////* bzw. */
Kann mir jemand einen kleinen Tip geben? Mir wurde schon empfohlen
eine State Machine in C zu schreiben, das waere dann die naechste
Aufgabe, momentan will ich erstmal den Regex weiter verbessern.
Gruss 403
Lesezeichen