Problem mit Escaped-Sequenzen

Für allgemeine Fragen zur Programmierung mit PureBasic.
Omi
Beiträge: 143
Registriert: 25.03.2013 09:59

Problem mit Escaped-Sequenzen

Beitrag von Omi »

Hallo,

kann es sein, dass EscapeString() (bzw. die nachfolgende Verarbeitung in PB) bei manchen (fallweise nicht) unterstützten Sequenzen diese nicht aus dem String entfernen werden (oder mach ich was falsch).
Das Beispiel wurde unter PB5.46 (auch Ascii) + PB5.62 unter Xubuntu und Wine getestet (bei \v und \a passiert nichts (was natürlich sein kann), aber es bleibt jeweils ein Zeichen in der Ausgabe zurück) ...

Code: Alles auswählen

Global S.s= ~"Eine Zeile mit \"Quote\", Zeilenumbruch, \nvertikalem Tab\v, horizontalem \tTab \ndem Backslash \\ und einem Bing\a.\n"
Debug S

If OpenWindow(0, 300, 200, 400, 200, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
MessageRequester("Escaped string test", S)

Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Grüße, Charly

ps: ... und jetzt mit vollständiger Überschrift :wink:
PureBasic Linux-API-Library: http://www.chabba.de
Benutzeravatar
Josh
Beiträge: 1028
Registriert: 04.08.2009 17:24

Re: Problem mit Escaped-Sequenzen

Beitrag von Josh »

Omi hat geschrieben:kann es sein, dass EscapeString() (bzw. die nachfolgende Verarbeitung in PB) bei manchen (fallweise nicht) unterstützten Sequenzen diese nicht aus dem String entfernen werden
Warum soll da was aus dem String entfernt werden? Pb ersetzt die Sequenzen durch das entsprechende Ascii-Zeichen und das war es. Was die Anwendung, an die du den String dann sendest damit macht, ist nicht Sache von Pb.
Omi
Beiträge: 143
Registriert: 25.03.2013 09:59

Re: Problem mit Escaped-Sequenzen

Beitrag von Omi »

Hi!
Pb ersetzt die Sequenzen durch das entsprechende Ascii-Zeichen und das war es.
Ja, das Ergebnis sieht danach aus.

Ich wäre der (unrealistischen) Hoffnung gewesen, PB würde sich um kaum benutzte Escape-Sequenzen wie \a (Bell) selber kümmern, und man (der User) könnte so jederzeit einen 'Bing' innerhalb eines Strings erzeugen. :wink:
Aber \a ist wohl höchsten bei Übergabe an z.B. ein Terminal wirksam.

Gruß Charly
PureBasic Linux-API-Library: http://www.chabba.de
Antworten