Hallo,
Ich habe eine Frage, die sich mit Escape-Sequenzen im Datentyp Char beschäftigt:
Für eine Uni-Lehrveranstaltung bin ich gerade mit dem bauen eines Compilers beschäftigt.
Nun Lese ich also ein SrcFile ein, und habe dass intern als String vorliegen.
Schließlich wird die lexikalische Analyse gemacht ... es wird also Char für Char durchgegangen, und je nachdem ob es Zahl/Buchstabe etc. ist, intern weiterverarbeitet...
Mein Problem: Ich soll bei der Analyse auch Escape-Sequenzen, wie '\?' oder '\a' erkennen können.
D.H. wenn im Quelltext \? oder \a (und eineige weitere, die Java nicht erkennt) vorkommen, soll ich das auch als \? und \a erkennen.
Allerdings: wenn ich aus dem String, der den Quellcode enthält, die einzelnen Chars herauslese, dann wird \? als \\? gelesen. D.h. ich bekommen anstelle eines Chars mit Inhalt '\?', zwei Chars: '\\' und '?'.
Ich möchte aber \? als ganzes erkennen.
Ich hoffe ich konnte halbwegs klar machen was passiert...
Kann mir jemand helfen, ob mein Vorhaben überhaupt möglich ist? Oder muss ich die Sache anders rangehen, um die von mir gewünschten Chars zu erkennen...?
Wäre sehr, sehr dankbar für ein paar hilfreiche Tips!
Freundliche Grüße
Phil
Ich habe eine Frage, die sich mit Escape-Sequenzen im Datentyp Char beschäftigt:
Für eine Uni-Lehrveranstaltung bin ich gerade mit dem bauen eines Compilers beschäftigt.
Nun Lese ich also ein SrcFile ein, und habe dass intern als String vorliegen.
Schließlich wird die lexikalische Analyse gemacht ... es wird also Char für Char durchgegangen, und je nachdem ob es Zahl/Buchstabe etc. ist, intern weiterverarbeitet...
Mein Problem: Ich soll bei der Analyse auch Escape-Sequenzen, wie '\?' oder '\a' erkennen können.
D.H. wenn im Quelltext \? oder \a (und eineige weitere, die Java nicht erkennt) vorkommen, soll ich das auch als \? und \a erkennen.
Allerdings: wenn ich aus dem String, der den Quellcode enthält, die einzelnen Chars herauslese, dann wird \? als \\? gelesen. D.h. ich bekommen anstelle eines Chars mit Inhalt '\?', zwei Chars: '\\' und '?'.
Ich möchte aber \? als ganzes erkennen.
Ich hoffe ich konnte halbwegs klar machen was passiert...
Kann mir jemand helfen, ob mein Vorhaben überhaupt möglich ist? Oder muss ich die Sache anders rangehen, um die von mir gewünschten Chars zu erkennen...?
Wäre sehr, sehr dankbar für ein paar hilfreiche Tips!
Freundliche Grüße
Phil