[Allegro] Zeichen im Namen freier Variable
Thomas Berger
ThB at Gymel.com
Fr Dez 19 12:50:46 CET 2014
Lieber Herr Eger, liebe Liste,
> Nützlich fände ich eine Funktion ähnlich cstring Jd, die reinen hex-
> Code liefert - könnte Jx genannt werden - z.B.:
>
> var "A;BC" Jx
> würde dann "413B4243" in der iV liefern - wäre das nicht schön?
> Eine komplementäre Funktion dazu wäre dann auch nicht schlecht ...
benoetigt wird auf jeden Fall eine Funktion, die eine URL-Codierung
liefert: Wenn ich "Müller" als Suchbegriff habe und den in eine
URL packen will, ist das korrekt
Mu%C3%BCller
d.h. erst wird nach UTF-8 gewandelt, dann auf die *Byte-Repraesentation*
der Zeichen >127 (sowie einiger verbotener anderer, wie "?", "/", ...
und natuerlich "%") eine Umwandlung in Hex mit vorangesetztem "%"
veranstaltet [ich habe keine Ahnung, warum z.B. ruckzuck oder Zugriffe
aus a99 heraus ueberhaupt so oft funktionieren, anscheinend buegeln
Browser bzw. das M$-"Internet"-Interface da allerhand Murks still-
schweigend aus, Anhang B der HTML-4-Spezifikation empfiehlt das auch so:
< http://www.w3.org/TR/html4/appendix/notes.html#non-ascii-chars >].
In der Flex-Sprache (vorausgesetzt av-utf8.apr wurde vorher geladen
oder eine andere Parameterdatei, die an einer geeigneten Sprungmarke
das Inverse von "xcode u" realisiert):
var "query=Müller"
xcode pY
var Jx
wuerde dann das gewuenschte leisten.
Alternativ koennte man auch an eine Base-64-Codierung denken,
um Sonderzeichen zu schuetzen, auch diese Codierung ist
nuetzlich, wenn etwa Mails generiert werden sollen. Allerdings
wegen der Zeilenumbrueche nach soundsoviel Zeichen wohl nicht
so praktisch, wenn es um Glaettung in Bezug auf "namensfaehiges"
geht.
Wichtig ist aber m.E., dass diese Funktion (bzw. ihr zwingend
erforderliches Inverses) nicht explizit aufgerufen werden muss,
wenn es um Zugriff auf $- oder &-Variable geht...
viele Gruesse
Thomas Berger
Mehr Informationen über die Mailingliste Allegro