Schrift
[thread]7296[/thread]

Sonderzeichen ausgeben, "Zeichen-Code": z.B. Zeichen-Code: 001 in Perls ausgeben



<< |< 1 2 >| >> 11 Einträge, 2 Seiten
Matze
 2005-09-20 18:31
#58276 #58276
User since
2005-08-29
222 Artikel
BenutzerIn
[Homepage] [default_avatar]
Wie kann man in Perl den "Zeichen-Code" für z.B. ein Escape-Zeichen ausgeben ?
Ich weiß für das Escape-Zeichen gibt es \e aber wie ist es mit dem Code 001 z.B. ?

MfG. Matze
Mit freundlichen Grüßen: Matze
GwenDragon
 2005-09-20 18:32
#58277 #58277
User since
2005-01-17
14748 Artikel
Admin1
[Homepage]
user image
Dubu
 2005-09-20 19:19
#58278 #58278
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Innerhalb von Strings koennen Zeichencodes fuer nicht-druckbare Zeichen oktal, hexadezimal, als Kontrollsequenz oder als Unicode Named Char (letzteres wohl nur mit "use charnames") angegeben werden:
Code: (dl )
1
2
3
4
5
6
   "\e"   # Kurzzeichen fuer Escape
= "\033" # Oktal 33 = Dezimal 27 = Code von Escape
= "\x1b" # Hex 1B = Dezimal 27
= "\x1B" # das gleiche in Grossschreibung
= "\c["  # Ctrl-[
= "\N{ESCAPE}"  # Named Char

Siehe perlop, "Quote and Quote-like Operators".
Crian
 2005-09-20 19:42
#58279 #58279
User since
2003-08-04
5871 Artikel
ModeratorIn
[Homepage]
user image
++Dubu
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Matze
 2005-09-20 21:59
#58280 #58280
User since
2005-08-29
222 Artikel
BenutzerIn
[Homepage] [default_avatar]
Dankeschön!

Ich werds dann auch gleich übernehmen.

MfG. Matze
Mit freundlichen Grüßen: Matze
Crian
 2005-09-21 14:54
#58281 #58281
User since
2003-08-04
5871 Artikel
ModeratorIn
[Homepage]
user image
@Dubu, pack das dochmal ins Wiki, da war auch für mich noch was neues dabei gewesen =)

(Ich will mich keinesfalls zu irgendeinem Maß machen, aber ich hab allein schon durch das lange lesen hier doch schon eine Menge Konstrukte gesehen...)
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Dubu
 2005-09-22 00:35
#58282 #58282
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
[quote=Crian,21.09.2005, 12:54]@Dubu, pack das dochmal ins Wiki, da war auch für mich noch was neues dabei gewesen =)[/quote]
Wiki:Erledigt. :)
betterworld
 2005-09-22 00:41
#58283 #58283
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
[quote=Dubu,20.09.2005, 17:19]Innerhalb von Strings koennen Zeichencodes fuer nicht-druckbare Zeichen oktal, hexadezimal, als Kontrollsequenz oder als Unicode Named Char (letzteres wohl nur mit "use charnames") angegeben werden:
Code: (dl )
1
2
3
4
5
6
   "\e"   # Kurzzeichen fuer Escape
= "\033" # Oktal 33 = Dezimal 27 = Code von Escape
= "\x1b" # Hex 1B = Dezimal 27
= "\x1B" # das gleiche in Grossschreibung
= "\c["  # Ctrl-[
= "\N{ESCAPE}"  # Named Char

Siehe perlop, "Quote and Quote-like Operators".[/quote]
Ausserhalb von Strings kann man uebrigens auch solche Zeichen erzeugen, und zwar mit chr:
Code: (dl )
print chr(97); # Gibt das Zeichen mit Nummer 97 (dezimal) aus
Dubu
 2005-09-22 02:37
#58284 #58284
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
[quote=betterworld,21.09.2005, 22:41]Ausserhalb von Strings kann man uebrigens auch solche Zeichen erzeugen, und zwar mit chr:
Code: (dl )
print chr(97); # Gibt das Zeichen mit Nummer 97 (dezimal) aus
[/quote]
Dann wuerde ich aber auch erwaehnen, dass man diese Zahl 97 ebenso in oktal (0141), hexadezimal (0x61) oder binaer (0b01100001) angeben kann. :)

Das findet sich uebrigens in perldata unter "Scalar value constructors".\n\n

<!--EDIT|Dubu|1127342282-->
betterworld
 2005-09-22 02:47
#58285 #58285
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
[quote=Dubu,22.09.2005, 00:37]Dann wuerde ich aber auch erwaehnen, dass man diese Zahl 97 ebenso in oktal (0141), hexadezimal (0x61) oder binaer (0b01100001) angeben kann. :)[/quote]
Das habe ich wohl vergessen zu erwaehnen. Ausserdem kann man 97 natuerlich auch noch als ord('a') schreiben.\n\n

<!--EDIT|betterworld|1127343606-->
<< |< 1 2 >| >> 11 Einträge, 2 Seiten



View all threads created 2005-09-20 18:31.