Ich schreibe aus Neugier eine Spielzeugsprache. Ich habe einen funktionierenden Lexer geschrieben, um Token mit einer Anzahl von regulären Ausdrücken zu erstellen.Ist eine Schleife effizienter als Regex in einem Lexer?
Aus Leistungsgesichtspunkten ist es schneller/effizienter, den Quellcode Zeichen für Zeichen zu durchlaufen und die Token herauszufinden oder sollte ich mit Regex bleiben? Nur neugierig wie "richtige" Lexer implementiert sind.
Es hängt wirklich davon ab, wie Sie es implementieren. Eine schlecht geschriebene Schleife wird wahrscheinlich langsamer sein als die Regex, während eine sorgfältig optimierte Schleife wahrscheinlich schneller ist. Für eine Spielzeugsprache würde ich mit dem beginnen, was für Sie einfacher ist und dann andere Ansätze ausprobieren, wenn die Leistung nicht ausreicht. – svick