Drucken Sie die Zeichennamen

42

Jedes Unicode-Zeichen hat einen Namen wie "LATIN CAPITAL LETTER A". Ein Unicode-Zeichenname darf nur Großbuchstaben, Leerzeichen und das Minuszeichen enthalten.

Schreiben Sie ein Programm, das einen Text liest und die Namen der einzelnen Zeichen in einer neuen Zeile ausgibt. Wenn die Eingabe beispielsweise "Hallo, Welt!" Wäre, wäre die Ausgabe "Hallo, Welt!"

LATIN CAPITAL LETTER H
LATIN SMALL LETTER E
LATIN SMALL LETTER L
LATIN SMALL LETTER L
LATIN SMALL LETTER O
COMMA
SPACE
LATIN CAPITAL LETTER W
LATIN SMALL LETTER O
LATIN SMALL LETTER R
LATIN SMALL LETTER L
LATIN SMALL LETTER D
EXCLAMATION MARK
  • Die Eingabe sollte aus einer Datei oder Benutzereingabe stammen, nicht nur aus einer Zeichenfolge im Code.
  • Die Ausgabe sollte in eine Datei oder ein Standardformat geschrieben oder auf dem Bildschirm ausgedruckt werden.
  • Internet und externe Bibliotheken sind nicht erlaubt, alle notwendigen Daten sollten im Code sein.
  • Angenommen, die Eingabe enthält nur druckbare ASCII-Zeichen im lateinischen Basiscode-Bereich 32-126. Sie können eine nachgestellte Zeile ignorieren.
  • Alle Programmiersprachen erlaubt. Kürzester Code in Bytes gewinnt.

Die offiziellen Unicode-Zeichennamen finden Sie hier . Andere Quellen:

Dies ist meine erste Frage. Ich würde mich über jeden Vorschlag freuen, wenn dies verbessert werden kann.

Für die Zwecke dieser Herausforderung ist die nachstehende Liste normativ.

    32  0020        SPACE
!   33  0021        EXCLAMATION MARK
"   34  0022        QUOTATION MARK
#   35  0023        NUMBER SIGN
$   36  0024        DOLLAR SIGN
%   37  0025        PERCENT SIGN
&   38  0026        AMPERSAND
'   39  0027        APOSTROPHE
(   40  0028        LEFT PARENTHESIS
)   41  0029        RIGHT PARENTHESIS
*   42  002A        ASTERISK
+   43  002B        PLUS SIGN
,   44  002C        COMMA
-   45  002D        HYPHEN-MINUS
.   46  002E        FULL STOP
/   47  002F        SOLIDUS
0   48  0030        DIGIT ZERO
1   49  0031        DIGIT ONE
2   50  0032        DIGIT TWO
3   51  0033        DIGIT THREE
4   52  0034        DIGIT FOUR
5   53  0035        DIGIT FIVE
6   54  0036        DIGIT SIX
7   55  0037        DIGIT SEVEN
8   56  0038        DIGIT EIGHT
9   57  0039        DIGIT NINE
:   58  003A        COLON
;   59  003B        SEMICOLON
<   60  003C        LESS-THAN SIGN
=   61  003D        EQUALS SIGN
>   62  003E        GREATER-THAN SIGN
?   63  003F        QUESTION MARK
@   64  0040        COMMERCIAL AT
A   65  0041        LATIN CAPITAL LETTER A
B   66  0042        LATIN CAPITAL LETTER B
C   67  0043        LATIN CAPITAL LETTER C
D   68  0044        LATIN CAPITAL LETTER D
E   69  0045        LATIN CAPITAL LETTER E
F   70  0046        LATIN CAPITAL LETTER F
G   71  0047        LATIN CAPITAL LETTER G
H   72  0048        LATIN CAPITAL LETTER H
I   73  0049        LATIN CAPITAL LETTER I
J   74  004A        LATIN CAPITAL LETTER J
K   75  004B        LATIN CAPITAL LETTER K
L   76  004C        LATIN CAPITAL LETTER L
M   77  004D        LATIN CAPITAL LETTER M
N   78  004E        LATIN CAPITAL LETTER N
O   79  004F        LATIN CAPITAL LETTER O
P   80  0050        LATIN CAPITAL LETTER P
Q   81  0051        LATIN CAPITAL LETTER Q
R   82  0052        LATIN CAPITAL LETTER R
S   83  0053        LATIN CAPITAL LETTER S
T   84  0054        LATIN CAPITAL LETTER T
U   85  0055        LATIN CAPITAL LETTER U
V   86  0056        LATIN CAPITAL LETTER V
W   87  0057        LATIN CAPITAL LETTER W
X   88  0058        LATIN CAPITAL LETTER X
Y   89  0059        LATIN CAPITAL LETTER Y
Z   90  005A        LATIN CAPITAL LETTER Z
[   91  005B        LEFT SQUARE BRACKET
\   92  005C        REVERSE SOLIDUS
]   93  005D        RIGHT SQUARE BRACKET
^   94  005E        CIRCUMFLEX ACCENT
_   95  005F        LOW LINE
`   96  0060        GRAVE ACCENT
a   97  0061        LATIN SMALL LETTER A
b   98  0062        LATIN SMALL LETTER B
c   99  0063        LATIN SMALL LETTER C
d   100 0064        LATIN SMALL LETTER D
e   101 0065        LATIN SMALL LETTER E
f   102 0066        LATIN SMALL LETTER F
g   103 0067        LATIN SMALL LETTER G
h   104 0068        LATIN SMALL LETTER H
i   105 0069        LATIN SMALL LETTER I
j   106 006A        LATIN SMALL LETTER J
k   107 006B        LATIN SMALL LETTER K
l   108 006C        LATIN SMALL LETTER L
m   109 006D        LATIN SMALL LETTER M
n   110 006E        LATIN SMALL LETTER N
o   111 006F        LATIN SMALL LETTER O
p   112 0070        LATIN SMALL LETTER P
q   113 0071        LATIN SMALL LETTER Q
r   114 0072        LATIN SMALL LETTER R
s   115 0073        LATIN SMALL LETTER S
t   116 0074        LATIN SMALL LETTER T
u   117 0075        LATIN SMALL LETTER U
v   118 0076        LATIN SMALL LETTER V
w   119 0077        LATIN SMALL LETTER W
x   120 0078        LATIN SMALL LETTER X
y   121 0079        LATIN SMALL LETTER Y
z   122 007A        LATIN SMALL LETTER Z
{   123 007B        LEFT CURLY BRACKET
|   124 007C        VERTICAL LINE
}   125 007D        RIGHT CURLY BRACKET
~   126 007E        TILDE
Ich und meine Katze
quelle
4
Hallo, ich habe Ihre Frage bearbeitet. Machen Sie einen Rollback, wenn Sie anderer Meinung sind. Sie benötigen keine weiteren Informationsquellen, Sie benötigen eine normative Version in der Frage, um Probleme mit Unstimmigkeiten zu vermeiden. Ich habe mich für ssec.wisc.edu/~tomw/java/unicode.html#x0000 entschieden, da dies am präzisesten war. Ansonsten +1
Level River St
Danke für die Bearbeitung @steveverrill, ich war zu faul, um das selbst zu tun.
Ich und meine Katze
Anscheinend sind die Werte als Teil von Windows in verfügbar C:\Windows\System32\getuname.dll. Gilt dies auch als "externe Bibliothek", selbst wenn sie in Windows integriert ist?
lc.
6
Ich habe gerade das Wort Solidus gelernt.
Luke

Antworten:

31

Java - 113 Bytes (152, wenn von der Befehlszeile gelesen)

Bearbeiten: unnötige geschweifte Klammern entfernt.

Edit2: unnötige Variable entfernt.

Edit3: Anstelle von Character.getName () verwende ich c.getName ().

Edit4: String als Kommandozeilenargument übergeben.

Mit Befehlszeilenargument (113 Bytes):

class Z{public static void main(String[]x){for(Character c:x[0].toCharArray())System.out.println(c.getName(c));}}

Mit Lesezeile (152 Bytes):

class Z{public static void main(String[]x){for(Character c:new java.util.Scanner(System.in).nextLine().toCharArray())System.out.println(c.getName(c));}}

Java hat alles, was benötigt wird. Ich bin mir sicher, dass man hier Golf spielen könnte.

Peter Lenkefi
quelle
7
Verdammt! Ein eingebautes! Um dies zu einer interessanten Herausforderung zu machen, halte ich dies für nicht konform mit "alle erforderlichen Daten sollten im Code enthalten sein". Sehr klug.
Level River St
1
@ Steveverrill Na ja :). Ich habe eine andere Herausforderung erlebt, bei der gewöhnliches Lispeln etwas Ähnliches tat (von eins bis 100, wenn ich mich recht erinnere).
Peter Lenkefi
6
Wow, dieses Mal hat Java die Chance, viele Golfsprachen zu schlagen.
vsz
4
Alternative Java 8-Lösung: x[0].chars().forEach(i->System.out.println(Character.getName(i)));Dies spart 2 Zeichen im Vergleich zur Befehlszeilenargumentlösung (durch Ersetzen der for-loop).
hjk
3
Oder vielleichtx[0].chars().map(' '::getName).forEach(System.out::println);
Eric
18

Python 3, 56 Bytes

Verwendet eine eingebaute Funktion unicodedata.name(), daher ist diese möglicherweise nicht kompetent. Die Java-Antwort hat es ähnlich gemacht, also dachte ich, dass es sich zumindest lohnt, etwas zu posten.

from unicodedata import*
for i in input():print(name(i))
mbomb007
quelle
Ich wollte auch eine in Python posten, aber meine Java-Antwort war schummelig genug :).
Peter Lenkefi
1
Ist for i in input():print(unicodedata.name(i))das wohl kürzer?
Eric
1
@Eric Nein. Du musst import unicodedata, das ist also länger .
mbomb007
17

JavaScript (ES6) 594 618 626

Hinweis Ich könnte ~ 30 Bytes einsparen, indem ich die lange Zeichenfolge mit atob / btoa komprimiere, aber das utf8-Zeichen über '~' wird vom Post-Editor von Stack Exchange nicht gut akzeptiert. Ich bevorzuge es, stattdessen ein laufendes Snippet zu behalten.

Bearbeite 8 gespeicherte Zeichen dank @Ypnypn

Offensichtliche Komprimierung wiederholter Wörter. Der Zeilenvorschub innerhalb der Backticks ist signifikant und wird gezählt.

Testen Sie das Snippet in Firefox.

// TEST SUITE
// for testing purpose, redefine alert() to write inside the snippet body
alert=x=>O.innerHTML=x
// for testing purpose, redefine prompt() to have a default text containing all characters
_prompt=prompt
prompt=(i,s)=>{
  for(s='',i=32;i<127;i++)s+=String.fromCharCode(i);
  return _prompt("Insert your message or keep the default",s);
}  
  
// That's the answer code:
z='SPACE/EXCLAMA0QUOTA0NUMBER1DOLLAR1PERCENT1AMPERSAND/APOSTROPHE3242ASTERISK/PLUS1COMMA/HYPHEN-MINUS/FULL STOP/78ZERO8ONE8TWO8THREE8FOUR8FIVE8SIX8SEVEN8EIGHT8NINE86SEMI6LESS-THAN1EQUALS1GREATER-THAN1QUES0COMMERCIAL AT3SQUARE5REVERSE 7/4SQUARE5CIRCUMFLEX9/LOW LINE/GRAVE93CURLY5VERTICAL LINE/4CURLY5TILDE'.replace(/\d/g,c=>'TION MARK/, SIGN/,PARENTHESIS/,/LEFT ,RIGHT , BRACKET/,COLON/,SOLIDUS,/DIGIT , ACCENT'.split`,`[c]).split`/`,alert([...prompt()].map(c=>(q=c.charCodeAt()-32)<33?z[q]:q<59?'LATIN CAPITAL LETTER '+c:q<65?z[q-26]:q<91?'LATIN SMALL LETTER '+c.toUpperCase():z[q-52]).join`
`)
<pre id=O></pre>

edc65
quelle
9

R, 54 Bytes 62

library(Unicode)
cat(u_char_name(utf8ToInt(scan(,""))),sep="\n")

Edit: per @flodels Kommentar muss ich ihn erst von der Verbindung lesen, musste also hinzufügen scan. Dies ist wahrscheinlich auch eine nicht kompetente Lösung nach allen Regeln.

Verwendungszweck

> cat(u_char_name(utf8ToInt(scan(,""))),sep="\n")
1: 'Hello, World!'
2: 
Read 1 item
LATIN CAPITAL LETTER H
LATIN SMALL LETTER E
LATIN SMALL LETTER L
LATIN SMALL LETTER L
LATIN SMALL LETTER O
COMMA
SPACE
LATIN CAPITAL LETTER W
LATIN SMALL LETTER O
LATIN SMALL LETTER R
LATIN SMALL LETTER L
LATIN SMALL LETTER D
EXCLAMATION MARK

Sie können es auch in eine Funktion für eine bequemere Verwendung einwickeln

UNI <- function(x)cat(paste0(u_char_name(utf8ToInt(x)),"\n"))

Dann ist die Verwendung gerecht

UNI("Hello, World!")
David Arenburg
quelle
1
Deine Byteanzahl ist korrekt :)
Beta Decay
1
Und willkommen bei PPCG! : D
Beta Decay
Gut, wenn Sie eine integrierte Funktion für die Aufgabe haben, die Ausgabe jedoch nicht den Anforderungen entspricht - 4-Spalten-Tabelle statt 1-Spalten-Tabelle. Ich denke, Sie sollten einen Kern hinzufügen, um die richtige Ausgabe zu erhalten
edc65
@ edc65 so einfach zu beheben, ich habe es nur als Bonus gedacht.
David Arenburg,
@ edc65 behoben.
David Arenburg
7

Perl 6 , 21 Bytes

Ich habe keine Regel speziell gegen die Verwendung einer eingebauten Methode zum Abrufen der Unicode-Namen gesehen.
(Auch die Java-Antwort, die derzeit die am höchsten bewertete ist, macht das Gleiche.)

.say for get.uninames
Brad Gilbert b2gills
quelle
1
Perl 6 ist komisch. Ich liebe es trotzdem.
Katze
6

Perl (+ Coreutils) , 563 Bytes

Hinweis : Das untenstehende funktioniert nicht wie es ist, es muss vom xxdunten stehenden Speicherauszug reproduziert werden! Ich habe versucht, die Rohdaten direkt an weiterzuleiten zcat, aber das ist fehlgeschlagen. Ich verwende vielleicht nur ein natives Perl Gzip-Modul, aber das wird sicher morgen sein!

use MIME::Base64;$x=encode_base64(join'',<DATA>);print eval(`base64 -D<<<'$x'|zcat`)->[-32+ord$_].$/for<>=~/./g
__END__
.....x.U.._.u.[r. .@.._~.E(X.i..............J_....1..N......7K......|ih....P...a7......,a.....o.!.=N.K.i.....$..vFv.Pv..........*o...=..|o..O.B..c%2\bj1Gr...nr.|c.{...q......3......aw;b\1...C.Yp..l..K...bB..2C...K..O8e.v...."..C..
.s; .}Oj.....JC..-`@[email protected].&.&.&.&.&.MdM.&.;..X5q..M.wM|o....3.s.{....MJf4.h>G..B...~$....w...WC.q.2..b.o..Hh.7|.... c..(.I......d|.1...8.8.8.x.q.1.X..*.U.W..d|.....f..4f...l..g'>..oUq4.....j.jU...
0000000: 7573 6520 4d49 4d45 3a3a 4261 7365 3634  use MIME::Base64
0000010: 3b24 783d 656e 636f 6465 5f62 6173 6536  ;$x=encode_base6
0000020: 3428 6a6f 696e 2727 2c3c 4441 5441 3e29  4(join'',<DATA>)
0000030: 3b70 7269 6e74 2065 7661 6c28 6062 6173  ;print eval(`bas
0000040: 6536 3420 2d44 3c3c 3c27 2478 277c 7a63  e64 -D<<<'$x'|zc
0000050: 6174 6029 2d3e 5b2d 3332 2b6f 7264 245f  at`)->[-32+ord$_
0000060: 5d2e 242f 666f 723c 3e3d 7e2f 2e2f 670a  ].$/for<>=~/./g.
0000070: 5f5f 454e 445f 5f0a 1f8b 0808 ff78 ec55  __END__......x.U
0000080: 0003 5f00 7594 5b72 eb20 0c40 b7c2 5f7e  .._.u.[r. .@.._~
0000090: da45 2858 b669 c4c3 089c a49d ee7f 1b17  .E(X.i..........
00000a0: 92b1 9df4 4a5f 96ce d180 3192 7f4e 9cc0  ....J_....1..N..
00000b0: e2e9 e384 374b e0a1 b818 8c87 7c69 68a9  ....7K......|ih.
00000c0: b1bc 8150 fd19 b361 3785 960d 9108 f62c  ...P...a7......,
00000d0: 61b6 18ca 9682 6f80 210c 3d4e 914b 8e69  a.....o.!.=N.K.i
00000e0: eefb 108e c524 c8ad 7646 76dc 5076 d3fc  .....$..vFv.Pv..
00000f0: 9701 17cc 8efb ae89 2a6f cbda e83d b4e7  ........*o...=..
0000100: 7c6f ab85 4fef 42ed d563 2532 5c62 6a31  |o..O.B..c%2\bj1
0000110: 4772 c383 0e6e 72c5 7c63 8e7b 1203 ee71  Gr...nr.|c.{...q
0000120: b91e bccc 190f 33c6 9a8f c4ad 8761 773b  ......3......aw;
0000130: 625c 31ec 19f6 43ec 5970 8f8d 6ca4 d84b  b\1...C.Yp..l..K
0000140: 18bd db62 42e6 cf32 43d8 ce84 4b05 da4f  ...bB..2C...K..O
0000150: 3865 8476 f4b7 8aa5 22bf de43 ff0a ed73  8e.v...."..C...s
0000160: 3b20 037d 4f6a b714 8c85 e44a 4384 a52d  ; .}Oj.....JC..-
0000170: 6040 1367 4d58 4d0c 9a40 4d8c 9a98 3431  `@[email protected]
0000180: 6bc2 69e2 4b13 174d 9026 bc26 8226 a226  k.i.K..M.&.&.&.&
0000190: 9226 164d 644d b026 d43b af9a 5835 71d5  .&.MdM.&.;..X5q.
00001a0: c44d 1377 4d7c 6fd3 cdad a133 9a73 067b  .M.wM|o....3.s.{
00001b0: c1fe aeb9 4d4a 6634 c768 3e47 febf 42eb  ....MJf4.h>G..B.
00001c0: b2ad 7e24 bc19 b0fd 77d2 978c 5743 cf71  ..~$....w...WC.q
00001d0: 9a32 acf8 621e 6fc1 1e48 68fa 377c 96b1  .2..b.o..Hh.7|..
00001e0: 95f1 2063 94f1 28e3 49c6 b38c 9d8c bf64  .. c..(.I......d
00001f0: 7c91 31c9 d8cb 38c8 38ca 38c9 7891 7196  |.1...8.8.8.x.q.
0000200: 31cb 58b9 cb2a e355 c657 19df 647c 97f1  1.X..*.U.W..d|..
0000210: dec2 b666 babf 3466 ebdf e26c eff5 6727  ...f..4f...l..g'
0000220: 3efb f76f 5571 34e0 e9f7 1fe2 6a1f 6a55  >..oUq4.....j.jU
0000230: 0700 00                                  ...

Führen Sie zum Reproduzieren der Datei Folgendes aus:

xxd -r > 57413.pl

Fügen Sie den Hexdump ein und drücken Sie Enter, dann Ctrl+ D.

Rennen wie:

perl 57413.pl <<< 'Hello, World!'
LATIN CAPITAL LETTER H
LATIN SMALL LETTER E
LATIN SMALL LETTER L
LATIN SMALL LETTER L
LATIN SMALL LETTER O
COMMA
SPACE
LATIN CAPITAL LETTER W
LATIN SMALL LETTER O
LATIN SMALL LETTER R
LATIN SMALL LETTER L
LATIN SMALL LETTER D
EXCLAMATION MARK

Vorherige reine Perl-Version, 893 Bytes

print[SPACE,'EXCLAMATION MARK','QUOTATION MARK',NUMBER.($s=" SIGN"),DOLLAR.$s,PERCENT.$s,AMPERSAND,APOSTROPHE,LEFT.($p=" PARENTHESIS"),RIGHT.$p,ASTERISK,PLUS.$s,COMMA,'HYPHEN-MINUS','FULL STOP',$d=SOLIDUS,($d="DIGIT ").ZERO,$d.ONE,$d.TWO,$d.THREE,$d.FOUR,$d.FIVE,$d.SIX,$d.SEVEN,$d.EIGHT,$d.NINE,COLON,SEMICOLON,"LESS-THAN$s",EQUALS.$s,"GREATER-THAN$s",'QUESTION MARK','COMMERCIAL AT',($b=($a=LATIN)." CAPITAL ".($l="LETTER ")).A,$b.B,$b.C,$b.D,$b.E,$b.F,$b.G,$b.H,$b.I,$b.J,$b.K,$b.L,$b.M,$b.N,$b.O,$b.P,$b.Q,$b.R,$b.S,$b.T,$b.U,$b.V,$b.W,$b.X,$b.Y,$b.Z,'LEFT SQUARE '.($e=BRACKET),"REVERSE $d","RIGHT SQUARE $e",'CIRCUMFLEX ACCENT','LOW LINE','GRAVE ACCENT',($m="$a SMALL $l ").A,$m.B,$m.C,$m.D,$m.E,$m.F,$m.G,$m.H,$m.I,$m.J,$m.K,$m.L,$m.M,$m.N,$m.O,$m.P,$m.Q,$m.R,$m.S,$m.T,$m.U,$m.V,$m.W,$m.X,$m.Y,$m.Z,"LEFT CURLY $e",'VERTICAL LINE',"RIGHT CURLY $e",TILDE]->[-32+ord$_].$/for<>=~/./g
Dom Hastings
quelle
5

awk - 794 739

     1 LATEINISCHER GROSSBUCHSTABE B
     2 LATEINISCHER GROSSBUCHSTABE E
     3 LATEINISCHER GROSSBUCHSTABE G
     4 LATEINISCHER GROSSBUCHSTABE I
     5 LATEINISCHES GROSSBUCHSTABEN NR
     6 Linke geschweifte Klammer 
     7 LATEINISCHER KLEINBUCHSTABE S
     8 LATEINISCHER KLEINBUCHSTABE P
     9 LATEINISCHER KLEINBUCHSTABE L
    10 LATEINISCHER KLEINBUCHSTABE I
    11 LATEINISCHER KLEINBUCHSTABE T
    12 LINKE PARENTHESE 
    13 ANGEBOTSZEICHEN 
    14 LATEINISCHER KLEINBUCHSTABE I
    15 COMMA 
    16 LATEINISCHES GROSSBUCHSTABEN L
    17 LATEINISCHER KLEINBUCHSTABE V
    18 COMMA 
    19 LATEINISCHER GROSSBUCHSTABE S
    20 LATEINISCHER KLEINBUCHSTABE V
    21 COMMA 
    22 LATEINISCHER KLEINBUCHSTABE A
    23 LATEINISCHER KLEINBUCHSTABE X
    24 COMMA 
    25 CIRCUMFLEX ACCENT 
    26 LATEINISCHER KLEINBUCHSTABE X
    27 COMMA 
    28 LINKE QUADRATISCHE KLAMMER 
    29 LATEINISCHER KLEINBUCHSTABE X
    30 COMMA 
    31 LATEINISCHES GROSSBUCHSTABEN Q
    32 COMMA 
    33 LATEINISCHES GROSSBUCHSTABEN O
    34 COMMA 
    35 LATEINISCHER KLEINBUCHSTABE T
    36 LATEINISCHER GROSSBUCHSTABE K
    37 COMMA 
    38 LATEINISCHER KLEINBUCHSTABE C
    39 LATEINISCHER GROSSBUCHSTABE K
    40 COMMA 
    41 LATEINISCHES GROSSBUCHSTABEN V
    42 COMMA 
    43 LATEINISCHER KLEINBUCHSTABE Q
    44 LATEINISCHER KLEINBUCHSTABE X
    45 COMMA 
    46 LATEINISCHER KLEINBUCHSTABE G
    47 COMMA 
    48 LATEINISCHER GROSSBUCHSTABE I
    49 COMMA 
    50 LATEINISCHER KLEINBUCHSTABE W
    51 LATEINISCHER KLEINBUCHSTABE U
    52 COMMA 
    53 LATEINISCHES GROSSBUCHSTABEN X
    54 COMMA 
    55 LATEINISCHER KLEINBUCHSTABE B
    56 LATEINISCHER KLEINBUCHSTABE Y
    57 COMMA 
    58 LATEINISCHER KLEINBUCHSTABE B
    59 Linke geschweifte Klammer 
    60 COMMA 
    61 LATEINISCHER KLEINBUCHSTABE B
    62 LATEINISCHER KLEINBUCHSTABE Z
    63 COMMA 
    64 LATEINISCHER KLEINBUCHSTABE B
    65 LATEINISCHER KLEINBUCHSTABE D
    66 COMMA 
    67 LATEINISCHER KLEINBUCHSTABE B
    68 LATEINISCHER KLEINBUCHSTABE P
    69 COMMA 
    70 LATEINISCHER KLEINBUCHSTABE B
    71 LATEINISCHER KLEINBUCHSTABE R
    72 COMMA 
    73 LATEINISCHER KLEINBUCHSTABE B
    74 RECHTE LOCKENHALTERUNG 
    75 COMMA 
    76 LATEINISCHER KLEINBUCHSTABE B
    77 LATEINISCHER KLEINBUCHSTABE K
    78 COMMA 
    79 LATEINISCHER KLEINBUCHSTABE B
    80 LATEINISCHER KLEINBUCHSTABE L
    81 COMMA 
    82 LATEINISCHER KLEINBUCHSTABE B
    83 LATEINISCHER KLEINBUCHSTABE O
    84 COMMA 
    85 LATEINISCHER KLEINBUCHSTABE E
    86 COMMA 
    87 LATEINISCHER GROSSBUCHSTABE S
    88 COMMA 
    89 LATEINISCHER GROSSBUCHSTABE R
    90 LATEINISCHER KLEINBUCHSTABE X
    91 COMMA 
    92 NIEDRIGE LINIE 
    93 LATEINISCHER KLEINBUCHSTABE X
    94 COMMA 
    95 LATEINISCHER GROSSBUCHSTABE J
    96 LATEINISCHER KLEINBUCHSTABE X
    97 COMMA 
    98 LATEINISCHER GROSSBUCHSTABE U
    99 LATEINISCHER KLEINBUCHSTABE V
   100 COMMA 
   101 LATEINISCHER GROSSBUCHSTABE M
   102 TILDE 
   103 COMMA 
   104 RAUM 
   105 LATEINISCHER KLEINBUCHSTABE T
   106 GRAVE ACCENT 
   107 LATEINISCHES GROSSBUCHSTABEN Y
   108 COMMA 
   109 LATEINISCHER GROSSBUCHSTABE Z
   110 LATEINISCHES GROSSBUCHSTABEN X
   111 COMMA 
   112 LATEINISCHER KLEINBUCHSTABE C
   113 GRAVE ACCENT 
   114 LATEINISCHES GROSSBUCHSTABEN Y
   115 COMMA 
   116 LATEINISCHES GROSSBUCHSTABEN NR
   117 RÜCKSEITIGER SOLIDUS 
   118 RÜCKSEITIGER SOLIDUS 
   119 COMMA 
   120 VERTIKALE LINIE 
   121 LATEINISCHER KLEINBUCHSTABE S
   122 COMMA 
   123 LATEINISCHER KLEINBUCHSTABE M
   124 RÜCKSEITIGER SOLIDUS 
   125 RÜCKSEITIGER SOLIDUS 
   126 COMMA 
   127 SPACE 
   128 LATEINISCHER KLEINBUCHSTABE T
   129 LATEINISCHER KLEINBUCHSTABE H
   130 LATEINISCHES GROSSBUCHSTABEN Y
   131 COMMA 
   132 LATEINISCHER GROSSBUCHSTABE T
   133 LATEINISCHER KLEINBUCHSTABE S
   134 COMMA 
   135 LATEINISCHER KLEINBUCHSTABE C
   136 LATEINISCHER KLEINBUCHSTABE H
   137 LATEINISCHER GROSSBUCHSTABE Y
   138 COMMA 
   139 LATEINISCHER KLEINBUCHSTABE F
   140 SPACE 
   141 LATEINISCHER GROSSBUCHSTABE H
   142 LATEINISCHES GROSSBUCHSTABEN Y
   143 LATEINISCHER GROSSBUCHSTABE S
   144 LATEINISCHES GROSSBUCHSTABEN H
   145 LATEINISCHER GROSSBUCHSTABE E
   146 LATEINISCHES GROSSBUCHSTABEN NR
   147 HYPHEN-MINUS 
   148 LATEINISCHER GROSSBUCHSTABE M
   149 LATEINISCHER GROSSBUCHSTABE I
   150 LATEINISCHES GROSSBUCHSTABEN NR
   151 LATEINISCHER GROSSBUCHSTABE U
   152 LATEINISCHER GROSSBUCHSTABE S
   153 SPACE 
   154 LATEINISCHER GROSSBUCHSTABE G
   155 LATEINISCHER GROSSBUCHSTABE R
   156 LATEINISCHER GROSSBUCHSTABE E
   157 LATEINISCHER GROSSBUCHSTABE A
   158 LATEINISCHER GROSSBUCHSTABE T
   159 LATEINISCHER GROSSBUCHSTABE E
   160 LATEINISCHER GROSSBUCHSTABE R
   161 HYPHEN-MINUS 
   162 LATEINISCHER GROSSBUCHSTABE T
   163 LATEINISCHER GROSSBUCHSTABE H
   164 LATEINISCHES GROSSBUCHSTABEN A
   165 LATEINISCHES GROSSBUCHSTABEN NR
   166 RAUM 
   167 LATEINISCHES GROSSBUCHSTABEN P
   168 LATEINISCHES GROSSBUCHSTABEN A
   169 LATEINISCHER GROSSBUCHSTABE R
   170 LATEINISCHER GROSSBUCHSTABE E
   171 LATEINISCHES GROSSBUCHSTABEN NR
   172 LATEINISCHER GROSSBUCHSTABE T
   173 LATEINISCHES GROSSBUCHSTABEN H
   174 LATEINISCHER GROSSBUCHSTABE E
   175 LATEINISCHER GROSSBUCHSTABE S
   176 LATEINISCHES KAPITALBUCHSTABE I
   177 LATEINISCHER GROSSBUCHSTABE S
   178 RAUM 
   179 LATEINISCHES GROSSBUCHSTABEN E
   180 LATEINISCHES GROSSBUCHSTABEN X
   181 LATEINISCHES GROSSBUCHSTABEN C
   182 LATEINISCHER GROSSBUCHSTABE L
   183 LATEINISCHES GROSSBUCHSTABEN A
   184 LATEINISCHER GROSSBUCHSTABE M
   185 LATEINISCHER GROSSBUCHSTABE A
   186 LATEINISCHER GROSSBUCHSTABE T
   187 LATEINISCHES KAPITALBUCHSTABE I
   188 LATEINISCHES GROSSBUCHSTABEN O
   189 LATEINISCHES GROSSBUCHSTABEN NR
   190 SPACE 
   191 LATEINISCHES GROSSBUCHSTABEN C
   192 LATEINISCHES GROSSBUCHSTABEN O
   193 LATEINISCHER GROSSBUCHSTABE M
   194 LATEINISCHER GROSSBUCHSTABE M
   195 LATEINISCHER GROSSBUCHSTABE E
   196 LATEINISCHER GROSSBUCHSTABE R
   197 LATEINISCHER GROSSBUCHSTABE C
   198 LATEINISCHES KAPITALBUCHSTABE I
   199 LATEINISCHER GROSSBUCHSTABE A
   200 LATEINISCHER GROSSBUCHSTABE L
   201 RAUM 
   202 LATEINISCHES GROSSBUCHSTABEN C
   203 LATEINISCHER GROSSBUCHSTABE I
   204 LATEINISCHER GROSSBUCHSTABE R
   205 LATEINISCHER GROSSBUCHSTABE C
   206 LATEINISCHER GROSSBUCHSTABE U
   207 LATEINISCHER GROSSBUCHSTABE M
   208 LATEINISCHER GROSSBUCHSTABE F
   209 LATEINISCHES GROSSBUCHSTABEN L
   210 LATEINISCHER GROSSBUCHSTABE E
   211 LATEINISCHES GROSSBUCHSTABEN X
   212 SPACE 
   213 LATEINISCHES GROSSBUCHSTABEN A
   214 LATEINISCHER GROSSBUCHSTABE S
   215 LATEINISCHES GROSSBUCHSTABEN O
   216 LATEINISCHES GROSSBUCHSTABEN S
   217 LATEINISCHER GROSSBUCHSTABE T
   218 LATEINISCHER GROSSBUCHSTABE R
   219 LATEINISCHES GROSSBUCHSTABEN O
   220 LATEINISCHER GROSSBUCHSTABE P
   221 LATEINISCHES GROSSBUCHSTABEN H
   222 LATEINISCHES GROSSBUCHSTABEN E
   223 SPACE 
   224 LATEINISCHER GROSSBUCHSTABE S
   225 LATEINISCHER GROSSBUCHSTABE E
   226 LATEINISCHER GROSSBUCHSTABE M
   227 LATEINISCHES KAPITALBUCHSTABE I
   228 LATEINISCHES GROSSBUCHSTABEN C
   229 LATEINISCHES GROSSBUCHSTABEN O
   230 LATEINISCHER GROSSBUCHSTABE L
   231 LATEINISCHES GROSSBUCHSTABEN O
   232 LATEINISCHES GROSSBUCHSTABEN NR
   233 RAUM 
   234 LATEINISCHES GROSSBUCHSTABEN A
   235 LATEINISCHER GROSSBUCHSTABE M
   236 LATEINISCHER GROSSBUCHSTABE P
   237 LATEINISCHER GROSSBUCHSTABE E
   238 LATEINISCHER GROSSBUCHSTABE R
   239 LATEINISCHER GROSSBUCHSTABE S
   240 LATEINISCHES GROSSBUCHSTABEN A
   241 LATEINISCHES GROSSBUCHSTABEN NR
   242 LATEINISCHES GROSSBUCHSTABEN D
   243 SPACE 
   244 LATEINISCHER GROSSBUCHSTABE L
   245 LATEINISCHES GROSSBUCHSTABEN E
   246 LATEINISCHER GROSSBUCHSTABE S
   247 LATEINISCHER GROSSBUCHSTABE S
   248 HYPHEN-MINUS 
   249 LATEINISCHER GROSSBUCHSTABE T
   250 LATEINISCHES GROSSBUCHSTABEN H
   251 LATEINISCHES GROSSBUCHSTABEN A
   252 LATEINISCHES GROSSBUCHSTABEN NR
   253 SPACE 
   254 LATEINISCHES GROSSBUCHSTABEN Q
   255 LATEINISCHER GROSSBUCHSTABE U
   256 LATEINISCHES GROSSBUCHSTABEN O
   257 LATEINISCHER GROSSBUCHSTABE T
   258 LATEINISCHES GROSSBUCHSTABEN A
   259 LATEINISCHER GROSSBUCHSTABE T
   260 LATEINISCHER GROSSBUCHSTABE I
   261 LATEINISCHES GROSSBUCHSTABEN O
   262 LATEINISCHES GROSSBUCHSTABEN NR
   263 SPACE 
   264 LATEINISCHES GROSSBUCHSTABEN V
   265 LATEINISCHES GROSSBUCHSTABEN E
   266 LATEINISCHER GROSSBUCHSTABE R
   267 LATEINISCHER GROSSBUCHSTABE T
   268 LATEINISCHES KAPITALBUCHSTABE I
   269 ​​LATEINISCHES GROSSBUCHSTABEN C
   270 LATEINISCHER GROSSBUCHSTABE A
   271 LATEINISCHES GROSSBUCHSTABEN L
   272 SPACE 
   273 LATEINISCHES GROSSBUCHSTABEN Q
   274 LATEINISCHER GROSSBUCHSTABE U
   275 LATEINISCHER GROSSBUCHSTABE E
   276 LATEINISCHER GROSSBUCHSTABE S
   277 LATEINISCHER GROSSBUCHSTABE T
   278 LATEINISCHER GROSSBUCHSTABE I
   279 LATEINISCHES GROSSBUCHSTABEN O
   280 LATEINISCHES GROSSBUCHSTABEN NR
   281 SPACE 
   282 LATEINISCHES GROSSBUCHSTABEN A
   283 LATEINISCHES GROSSBUCHSTABEN S
   284 LATEINISCHER GROSSBUCHSTABE T
   285 LATEINISCHES GROSSBUCHSTABEN E
   286 LATEINISCHER GROSSBUCHSTABE R
   287 LATEINISCHES KAPITALBUCHSTABE I
   288 LATEINISCHES GROSSBUCHSTABEN S
   289 LATEINISCHER GROSSBUCHSTABE K
   290 SPACE 
   291 LATEINISCHES GROSSBUCHSTABEN C
   292 LATEINISCHES GROSSBUCHSTABEN A
   293 LATEINISCHER GROSSBUCHSTABE S
   294 LATEINISCHES KAPITALBUCHSTABE I
   295 LATIN CAPITAL LETTER T
   296 LATEINISCHES GROSSBUCHSTABEN A
   297 LATEINISCHES GROSSBUCHSTABEN L
   298 SPACE 
   299 LATEINISCHER GROSSBUCHSTABE S
   300 LATEINISCHER GROSSBUCHSTABE O
   301 LATEINISCHES GROSSBUCHSTABEN L
   302 LATEINISCHER GROSSBUCHSTABE I
   303 LATEINISCHES GROSSBUCHSTABEN D
   304 LATEINISCHER GROSSBUCHSTABE U
   305 LATEINISCHER GROSSBUCHSTABE S
   306 SPACE 
   307 LATEINISCHES GROSSBUCHSTABEN B
   308 LATEINISCHER GROSSBUCHSTABE R
   309 LATEINISCHES GROSSBUCHSTABEN A
   310 LATEINISCHES GROSSBUCHSTABEN C
   311 LATEINISCHER GROSSBUCHSTABE K
   312 LATEINISCHES GROSSBUCHSTABEN E
   313 LATEINISCHER GROSSBUCHSTABE T
   314 SPACE 
   315 LATEINISCHER GROSSBUCHSTABE R
   316 LATEINISCHER GROSSBUCHSTABE E
   317 LATEINISCHES GROSSBUCHSTABEN V
   318 LATEINISCHES GROSSBUCHSTABEN E
   319 LATEINISCHER GROSSBUCHSTABE R
   320 LATEINISCHER GROSSBUCHSTABE S
   321 LATEINISCHES GROSSBUCHSTABEN E
   322 SPACE 
   323 LATEINISCHER GROSSBUCHSTABE P
   324 LATEINISCHER GROSSBUCHSTABE E
   325 LATEINISCHER GROSSBUCHSTABE R
   326 LATEINISCHES GROSSBUCHSTABEN C
   327 LATEINISCHER GROSSBUCHSTABE E
   328 LATEINISCHES GROSSBUCHSTABEN NR
   329 LATIN CAPITAL LETTER T
   330 SPACE 
   331 LATEINISCHES GROSSBUCHSTABEN A
   332 LATEINISCHES GROSSBUCHSTABEN C
   333 LATEINISCHER GROSSBUCHSTABE C
   334 LATEINISCHER GROSSBUCHSTABE E
   335 LATEINISCHES GROSSBUCHSTABEN NR
   336 LATEINISCHER GROSSBUCHSTABE T
   337 SPACE 
   338 LATEINISCHES GROSSBUCHSTABEN L
   339 LATEINISCHER GROSSBUCHSTABE E
   340 LATEINISCHER GROSSBUCHSTABE T
   341 LATEINISCHER GROSSBUCHSTABE T
   342 LATEINISCHER GROSSBUCHSTABE E
   343 LATEINISCHER GROSSBUCHSTABE R
   344 SPACE 
   345 LATEINISCHES GROSSBUCHSTABEN D
   346 LATEINISCHER GROSSBUCHSTABE O
   347 LATEINISCHER GROSSBUCHSTABE L
   348 LATEINISCHES GROSSBUCHSTABEN L
   349 LATEINISCHER GROSSBUCHSTABE A
   350 LATEINISCHER GROSSBUCHSTABE R
   351 SPACE 
   352 LATEINISCHER GROSSBUCHSTABE E
   353 LATEINISCHES GROSSBUCHSTABEN Q
   354 LATEINISCHER GROSSBUCHSTABE U
   355 LATEINISCHES GROSSBUCHSTABEN A
   356 LATEINISCHER GROSSBUCHSTABE L
   357 LATEINISCHER GROSSBUCHSTABE S
   358 SPACE 
   359 LATEINISCHER GROSSBUCHSTABE S
   360 LATIN CAPITAL LETTER Q
   361 LATEINISCHER GROSSBUCHSTABE U
   362 LATEINISCHES GROSSBUCHSTABEN A
   363 LATEINISCHER GROSSBUCHSTABE R
   364 LATEINISCHER GROSSBUCHSTABE E
   365 SPACE 
   366 LATEINISCHES GROSSBUCHSTABEN NR
   367 LATEINISCHER GROSSBUCHSTABE U
   368 LATEINISCHER GROSSBUCHSTABE M
   369 LATEINISCHES GROSSBUCHSTABEN B
   370 LATEINISCHER GROSSBUCHSTABE E
   371 LATEINISCHER GROSSBUCHSTABE R
   372 SPACE 
   373 LATEINISCHES GROSSBUCHSTABEN D
   374 LATEINISCHES KAPITALBUCHSTABE I
   375 LATEINISCHER GROSSBUCHSTABE G
   376 LATEINISCHES KAPITALBUCHSTABE I
   377 LATEINISCHER GROSSBUCHSTABE T
   378 SPACE 
   379 LATEINISCHER GROSSBUCHSTABE R
   380 LATEINISCHER GROSSBUCHSTABE I
   381 LATEINISCHER GROSSBUCHSTABE G
   382 LATEINISCHER GROSSBUCHSTABE H
   383 LATEINISCHER GROSSBUCHSTABE T
   384 SPACE 
   385 LATEINISCHER GROSSBUCHSTABE T
   386 LATEINISCHER GROSSBUCHSTABE H
   387 LATEINISCHER GROSSBUCHSTABE R
   388 LATEINISCHER GROSSBUCHSTABE E
   389 LATEINISCHER GROSSBUCHSTABE E
   390 SPACE 
   391 LATEINISCHER GROSSBUCHSTABE C
   392 LATEINISCHES GROSSBUCHSTABEN O
   393 LATEINISCHER GROSSBUCHSTABE L
   394 LATEINISCHER GROSSBUCHSTABE O
   395 LATEINISCHES GROSSBUCHSTABEN NR
   396 SPACE 
   397 LATEINISCHER GROSSBUCHSTABE T
   398 LATEINISCHES KAPITALBUCHSTABE I
   399 LATEINISCHER GROSSBUCHSTABE L
   400 LATEINISCHES GROSSBUCHSTABEN D
   401 LATEINISCHER GROSSBUCHSTABE E
   402 SPACE 
   403 LATEINISCHER GROSSBUCHSTABE C
   404 LATEINISCHER GROSSBUCHSTABE O
   405 LATEINISCHER GROSSBUCHSTABE M
   406 LATEINISCHER GROSSBUCHSTABE M
   407 LATEINISCHER GROSSBUCHSTABE A
   408 SPACE 
   409 LATEINISCHER GROSSBUCHSTABE C
   410 LATEINISCHER GROSSBUCHSTABE U
   411 LATEINISCHER GROSSBUCHSTABE R
   412 LATEINISCHER GROSSBUCHSTABE L
   413 LATEINISCHES GROSSBUCHSTABEN Y
   414 SPACE 
   415 LATEINISCHER GROSSBUCHSTABE S
   416 LATEINISCHER GROSSBUCHSTABE P
   417 LATEINISCHER GROSSBUCHSTABE A
   418 LATEINISCHES GROSSBUCHSTABEN C
   419 LATEINISCHER GROSSBUCHSTABE E
   420 SPACE 
   421 LATEINISCHER GROSSBUCHSTABE S
   422 LATEINISCHER GROSSBUCHSTABE M
   423 LATEINISCHES GROSSBUCHSTABEN A
   424 LATEINISCHER GROSSBUCHSTABE L
   425 LATEINISCHER GROSSBUCHSTABE L
   426 SPACE 
   427 LATEINISCHER GROSSBUCHSTABE S
   428 LATEINISCHER GROSSBUCHSTABE E
   429 LATEINISCHES GROSSBUCHSTABEN V
   430 LATEINISCHER GROSSBUCHSTABE E
   431 LATEINISCHES GROSSBUCHSTABEN NR
   432 SPACE 
   433 LATEINISCHER GROSSBUCHSTABE E
   434 LATEINISCHES KAPITALBUCHSTABE I
   435 LATEINISCHER GROSSBUCHSTABE G
   436 LATEINISCHER GROSSBUCHSTABE H
   437 LATEINISCHER GROSSBUCHSTABE T
   438 SPACE 
   439 LATEINISCHER GROSSBUCHSTABE G
   440 LATEINISCHER GROSSBUCHSTABE R
   441 LATEINISCHES GROSSBUCHSTABEN A
   442 LATEINISCHES GROSSBUCHSTABEN V
   443 LATEINISCHER GROSSBUCHSTABE E
   444 SPACE 
   445 LATEINISCHES GROSSBUCHSTABEN L
   446 LATEINISCHES GROSSBUCHSTABEN A
   447 LATEINISCHER GROSSBUCHSTABE T
   448 LATEINISCHES KAPITALBUCHSTABE I
   449 LATEINISCHES GROSSBUCHSTABEN NR
   450 SPACE 
   451 LATEINISCHES GROSSBUCHSTABEN NR
   452 LATEINISCHES KAPITALBUCHSTABE I
   453 LATEINISCHES GROSSBUCHSTABEN NR
   454 LATEINISCHER GROSSBUCHSTABE E
   455 SPACE 
   456 LATEINISCHER GROSSBUCHSTABE F
   457 LATEINISCHES GROSSBUCHSTABE O
   458 LATEINISCHER GROSSBUCHSTABE U
   459 LATEINISCHER GROSSBUCHSTABE R
   460 SPACE 
   461 LATEINISCHER GROSSBUCHSTABE P
   462 LATEINISCHES GROSSBUCHSTABEN L
   463 LATEINISCHER GROSSBUCHSTABE U
   464 LATEINISCHER GROSSBUCHSTABE S
   465 SPACE 
   466 LATEINISCHER GROSSBUCHSTABE F
   467 LATEINISCHES KAPITALBUCHSTABE I
   468 LATEINISCHES KAPITALBUCHSTABE V
   469 LATEINISCHER GROSSBUCHSTABE E
   470 SPACE 
   471 LATEINISCHES GROSSBUCHSTABEN L
   472 LATEINISCHES KAPITALBUCHSTABE I
   473 LATEINISCHES GROSSBUCHSTABEN NR
   474 LATEINISCHER GROSSBUCHSTABE E
   475 SPACE 
   476 LATEINISCHER GROSSBUCHSTABE L
   477 LATEINISCHER GROSSBUCHSTABE E
   478 LATEINISCHER GROSSBUCHSTABE F
   479 LATIN CAPITAL LETTER T
   480 SPACE 
   481 LATEINISCHER GROSSBUCHSTABE S
   482 LATEINISCHER GROSSBUCHSTABE T
   483 LATEINISCHES GROSSBUCHSTABEN O
   484 LATEINISCHER GROSSBUCHSTABE P
   485 SPACE 
   486 LATEINISCHER GROSSBUCHSTABE M
   487 LATEINISCHES GROSSBUCHSTABEN A
   488 LATEINISCHER GROSSBUCHSTABE R
   489 LATEINISCHER GROSSBUCHSTABE K
   490 SPACE 
   491 LATEINISCHER GROSSBUCHSTABE F
   492 LATEINISCHER GROSSBUCHSTABE U
   493 LATEINISCHES GROSSBUCHSTABEN L
   494 LATEINISCHER GROSSBUCHSTABE L
   495 SPACE 
   496 LATEINISCHER GROSSBUCHSTABE S
   497 LATEINISCHES KAPITALBUCHSTABE I
   498 LATEINISCHER GROSSBUCHSTABE G
   499 LATEINISCHES GROSSBUCHSTABEN NR
   500 SPACE 
   501 LATEINISCHER GROSSBUCHSTABE Z
   502 LATEINISCHES GROSSBUCHSTABEN E
   503 LATEINISCHER GROSSBUCHSTABE R
   504 LATEINISCHES GROSSBUCHSTABEN O
   505 SPACE 
   506 LATIN CAPITAL LETTER T
   507 LATEINISCHER GROSSBUCHSTABE W
   508 LATEINISCHES GROSSBUCHSTABEN O
   509 SPACE 
   510 LATEINISCHES GROSSBUCHSTABEN O
   511 LATEINISCHES GROSSBUCHSTABEN NR
   512 LATEINISCHER GROSSBUCHSTABE E
   513 SPACE 
   514 LATEINISCHER GROSSBUCHSTABE L
   515 LATEINISCHER GROSSBUCHSTABE O
   516 LATEINISCHER GROSSBUCHSTABE W
   517 SPACE 
   518 LATEINISCHER GROSSBUCHSTABE S
   519 LATEINISCHES KAPITALBUCHSTABE I
   520 LATEINISCHES GROSSBUCHSTABEN X
   521 SPACE 
   522 LATEINISCHES GROSSBUCHSTABEN A
   523 LATEINISCHER GROSSBUCHSTABE T
   524 ANGEBOTSZEICHEN 
   525 COMMA 
   526 LATEINISCHER KLEINBUCHSTABE W
   527 RECHTE PARENTHESE 
   528 SEMICOLON 
   529 LATEINISCHER KLEINBUCHSTABE Y
   530 GLEICHZEICHEN 
   531 LATEINISCHER KLEINBUCHSTABE W
   532 LINKE QUADRATISCHE KLAMMER 
   533 DIGIT TWO 
   534 RECHTE QUADRATISCHE KLAMMER 
   535 SEMICOLON 
   536 LATEINISCHER KLEINBUCHSTABE F
   537 LATEINISCHER KLEINBUCHSTABE O
   538 LATEINISCHER KLEINBUCHSTABE R
   539 LINKE PARENTHESE 
   540 LATEINISCHER KLEINBUCHSTABE X
   541 GLEICHZEICHEN 
   542 LATEINISCHER KLEINBUCHSTABE W
   543 LINKE QUADRATISCHE KLAMMER 
   544 DIGIT ONE 
   545 RECHTE QUADRATISCHE KLAMMER 
   546 SEMICOLON 
   547 LATEINISCHER KLEINBUCHSTABE I
   548 PLUSZEICHEN 
   549 PLUSZEICHEN 
   550 WENIGER ALS ZEICHEN 
   551 DIGIT TWO 
   552 DIGIT SIX 
   553 SEMICOLON 
   554 LATEINISCHER KLEINBUCHSTABE X
   555 GLEICHZEICHEN 
   556 LATEINISCHER KLEINBUCHSTABE X
   557 ANGEBOTSZEICHEN 
   558 LATEINISCHER KLEINBUCHSTABE N
   559 LATEINISCHER GROSSBUCHSTABE W
   560 RECHTE QUADRATISCHE KLAMMER 
   561 COMMA 
   562 ANGEBOTSZEICHEN 
   563 RECHTE PARENTHESE 
   564 LATEINISCHER KLEINBUCHSTABE Y
   565 GLEICHZEICHEN 
   566 LATEINISCHER KLEINBUCHSTABE Y
   567 ANGEBOTSZEICHEN 
   568 LATEINISCHER KLEINBUCHSTABE N
   569 LATEINISCHER KLEINBUCHSTABE J
   570 RECHTE QUADRATISCHE KLAMMER 
   571 COMMA 
   572 ANGEBOTSZEICHEN 
   573 SEMICOLON 
   574 LATEINISCHER KLEINBUCHSTABE F
   575 LATEINISCHER KLEINBUCHSTABE O
   576 LATEINISCHER KLEINBUCHSTABE R
   577 LINKE PARENTHESE 
   578 LATEINISCHER KLEINBUCHSTABE S
   579 LATEINISCHER KLEINBUCHSTABE P
   580 LATEINISCHER KLEINBUCHSTABE L
   581 LATEINISCHER KLEINBUCHSTABE I
   582 LATEINISCHER KLEINBUCHSTABE T
   583 LINKE PARENTHESE 
   584 LATEINISCHER KLEINBUCHSTABE X
   585 SPACE 
   586 LATEINISCHER KLEINBUCHSTABE Y
   587 SPACE 
   588 LATEINISCHER KLEINBUCHSTABE W
   589 LINKE QUADRATISCHE KLAMMER 
   590 DIGIT THREE 
   591 RECHTE QUADRATISCHE KLAMMER 
   592 COMMA 
   593 LATEINISCHER KLEINBUCHSTABE B
   594 COMMA 
   595 Anführungszeichen 
   596 COMMA 
   597 ANGEBOTSZEICHEN 
   598 RECHTE PARENTHESE 
   599 SEMICOLON 
   600 LATEINISCHER KLEINBUCHSTABE J
   601 PLUS ZEICHEN 
   602 PLUSZEICHEN 
   603 WENIGER ALS ZEICHEN 
   604 DIGIT ONE 
   605 DIGIT TWO 
   606 DIGIT SIX 
   607 SEMICOLON 
   608 LATEINISCHER GROSSBUCHSTABE F
   609 LATEINISCHER GROSSBUCHSTABE S
   610 GLEICHZEICHEN 
   611 LOW LINE 
   612 RECHTE KLAMMER 
   613 LATEINISCHER KLEINBUCHSTABE D
   614 LINKE QUADRATISCHE KLAMMER 
   615 LATEINISCHER KLEINBUCHSTABE S
   616 LATEINISCHER KLEINBUCHSTABE P
   617 LATEINISCHER KLEINBUCHSTABE R
   618 LATEINISCHER KLEINBUCHSTABE I
   619 LATIN SMALL LETTER N
   620 LATIN SMALL LETTER T
   621 LATEINISCHER KLEINBUCHSTABE F
   622 LINKE PARENTHESE 
   623 ANGEBOTSZEICHEN 
   624-PROZENT-ZEICHEN 
   625 LATEINISCHER KLEINBUCHSTABE C
   626 ANGEBOTSZEICHEN 
   627 COMMA 
   628 LATEINISCHER KLEINBUCHSTABE J
   629 RECHTE PARENTHESE 
   630 RECHTE QUADRATISCHE KLAMMER 
   631 GLEICHZEICHEN 
   632 LATEINISCHER KLEINBUCHSTABE J
   633 RECHTE LOCKENHALTERUNG 
   634 Linke geschweifte Klammer 
   635 LATEINISCHER KLEINBUCHSTABE F
   636 LATEINISCHER KLEINBUCHSTABE O
   637 LATEINISCHER KLEINBUCHSTABE R
   638 LINKE PARENTHESE 
   639 LATEINISCHER KLEINBUCHSTABE K
   640 GLEICHZEICHEN 
   641 DIGIT ZERO 
   642 SEMICOLON 
   643 LATEINISCHER KLEINBUCHSTABE K
   644 PLUS ZEICHEN 
   645 PLUSZEICHEN 
   646 WENIGER ALS ZEICHEN 
   647 LATIN CAPITAL LETTER N
   648 LATEINISCHER GROSSBUCHSTABE F
   649 SEMICOLON 
   650 LATEINISCHER KLEINBUCHSTABE P
   651 LATEINISCHER KLEINBUCHSTABE R
   652 LATEINISCHER KLEINBUCHSTABE I
   653 LATIN SMALL LETTER N
   654 LATIN SMALL LETTER T
   655 SPACE 
   656 LATEINISCHER KLEINBUCHSTABE I
   657 GLEICHZEICHEN 
   658 NIEDRIGE LINIE 
   659 RECHTE PARENTHESE 
   660 LATIN SMALL LETTER W
   661 LATEINISCHER KLEINBUCHSTABE H
   662 LATEINISCHER KLEINBUCHSTABE I
   663 LATEINISCHER KLEINBUCHSTABE L
   664 LATEINISCHER KLEINBUCHSTABE E
   665 LINKE PARENTHESE 
   666 LATEINISCHER KLEINBUCHSTABE I
   667 PLUSZEICHEN 
   668 PLUSZEICHEN 
   669 WENIGER ALS ZEICHEN 
   670 LATEINISCHER KLEINBUCHSTABE S
   671 LATEINISCHER KLEINBUCHSTABE P
   672 LATEINISCHER KLEINBUCHSTABE L
   673 LATEINISCHER KLEINBUCHSTABE I
   674 LATEINISCHER KLEINBUCHSTABE T
   675 LINKE PARENTHESE 
   676 LATEINISCHER KLEINBUCHSTABE B
   677 LINKE QUADRATISCHE KLAMMER 
   678 LATEINISCHER KLEINBUCHSTABE D
   679 LINKE QUADRATISCHE KLAMMER 
   680-DOLLAR-ZEICHEN 
   681 LATEINISCHER KLEINBUCHSTABE K
   682 RECHTE QUADRATISCHE KLAMMER 
   683 HYPHEN-MINUS 
   684 DIGIT THREE 
   685 DIGIT ONE 
   686 RECHTE QUADRATISCHE KLAMMER 
   687 COMMA 
   688 LATEINISCHER KLEINBUCHSTABE Q
   689 RECHTE PARENTHESE 
   690 RECHTE PARENTHESE 
   691 LATEINISCHER KLEINBUCHSTABE P
   692 LATEINISCHER KLEINBUCHSTABE R
   693 LATEINISCHER KLEINBUCHSTABE I
   694 LATEINISCHER KLEINBUCHSTABEN NR
   695 LATIN SMALL LETTER T
   696 LATEINISCHER KLEINBUCHSTABE F
   697 LINKE PARENTHESE 
   698 LATEINISCHER KLEINBUCHSTABE Z
   699 GLEICHZEICHEN 
   700 LATIN SMALL LETTER W
   701 LINKE QUADRATISCHE KLAMMER 
   702 LATEINISCHER KLEINBUCHSTABE D
   703 LINKE QUADRATISCHE KLAMMER 
   704 LATEINISCHER KLEINBUCHSTABE Q
   705 LINKE QUADRATISCHE KLAMMER 
   706 LATEINISCHER KLEINBUCHSTABE I
   707 RECHTE QUADRATISCHE KLAMMER 
   708 RECHTE QUADRATISCHE KLAMMER 
   709 HYPHEN-MINUS 
   710 DIGIT SIX 
   711 DIGIT NINE 
   712 RECHTE QUADRATISCHE KLAMMER 
   713 RECHTE PARENTHESE 
   714 ANGEBOTSZEICHEN 
   715 SPACE 
   716 ANGEBOTSZEICHEN 
   717 LINKE PARENTHESE 
   718 LATEINISCHER KLEINBUCHSTABE Z
   719 TILDE 
   720 SOLIDUS 
   721 LATIN CAPITAL LETTER T
   722 LATIN CAPITAL LETTER T
   723 SOLIDUS 
   724 FRAGEZEICHEN 
   725 LATIN SMALL LETTER T
   726 LATEINISCHER KLEINBUCHSTABE O
   727 LATEINISCHER KLEINBUCHSTABE U
   728 LATEINISCHER KLEINBUCHSTABE P
   729 LATEINISCHER KLEINBUCHSTABE P
   730 LATEINISCHER KLEINBUCHSTABE E
   731 LATEINISCHER KLEINBUCHSTABE R
   732 LINKE PARENTHESE 
   733-DOLLAR-ZEICHEN 
   734 LATEINISCHER KLEINBUCHSTABE K
   735 RECHTE KLAMMER 
   736 COLON 
   737 LOW LINE 
   738 RECHTE PARENTHESE 
   739 RECHTE LOCKENHALTERUNG

Nur ein Scherz; D

BEGIN{split("i,Lv,Sv,ax,^x,[x,Q,O,tK,cK,V,qx,g,I,wu,X,by,b{,bz,bd,bp,br,b},bk,bl,bo,e,P,Rx,_x,Jx,Uv,M~, t`Y,ZX,c`Y,N\\,|s,m\\, thY,Ts,chY,f HYPHEN-MINUS GREATER-THAN PARENTHESIS EXCLAMATION COMMERCIAL CIRCUMFLEX APOSTROPHE SEMICOLON AMPERSAND LESS-THAN QUOTATION VERTICAL QUESTION ASTERISK CAPITAL SOLIDUS BRACKET REVERSE PERCENT ACCENT LETTER DOLLAR EQUALS SQUARE NUMBER DIGIT RIGHT THREE COLON TILDE COMMA CURLY SPACE SMALL SEVEN EIGHT GRAVE LATIN NINE FOUR PLUS FIVE LINE LEFT STOP MARK FULL SIGN ZERO TWO ONE LOW SIX AT",w);x=w[1];for(y=w[2];C++<26;x=x"nW],")y=y"nj],";for(split(x y w[3],b,",");j++<126;FS=_)d[sprintf("%c",j)]=j}{for(k=0;k++<NF;print i=_)while(i++<split(b[d[$k]-31],q))printf(z=w[d[q[i]]-69])" "(z~/TT/?toupper($k):_)}

Funktioniert mit stdin / stdout.

Mehr "lesbar":

BEGIN{

  # This string (508 bytes) holds a representation of the character names in 
  # the right order, plus a list of the used words.

    split("i,Lv,Sv,ax,^x,[x,Q,O,tK,cK,V,qx,g,I,wu,X,by,b{,bz,bd,bp,br,b},bk,bl,bo,
    e,P,Rx,_x,Jx,Uv,M~, t`Y,ZX,c`Y,N\\,|s,m\\, thY,Ts,chY,f HYPHEN-MINUS GREATER-T
    HAN PARENTHESIS EXCLAMATION COMMERCIAL CIRCUMFLEX APOSTROPHE SEMICOLON AMPERSA
    ND LESS-THAN QUOTATION VERTICAL QUESTION ASTERISK CAPITAL SOLIDUS BRACKET REVE
    RSE PERCENT ACCENT LETTER DOLLAR EQUALS SQUARE NUMBER DIGIT RIGHT THREE COLON
    TILDE COMMA CURLY SPACE SMALL SEVEN EIGHT GRAVE LATIN NINE FOUR PLUS FIVE LINE
     LEFT STOP MARK FULL SIGN ZERO TWO ONE LOW SIX AT",w);

  # Since the letters each appear 26 times I construct that part at runtime.
  # The array b will hold the coded combinations of which words need to
  # be printed for each input character.

    x=w[1];
    for(y=w[2];C++<26;x=x"nW],")
        y=y"nj],";

  # The array d is an ASCIICodeFromChar function replacement.
  # I set the field separator to empty, so each character of the input is
  # an input field. That's why using a BEGIN part was mandatory.

    for(split(x y w[3],b,",");j++<126;FS=_)
        d[sprintf("%c",j)]=j
}

  # Here I go through the element of b that matches the input and print
  # the requested words, using the input to produce a capital letter if
  # needed. I excluded these from the word list to save another 26 bytes

{
    for(k=0;k++<NF;print i=_)
        while(i++<split(b[d[$k]-31],q))
            printf(z=w[d[q[i]]-69])" "(z~/TT/?toupper($k):_)
}
Cabbie407
quelle
5

C ++ 11, 739 Bytes

#include<iostream>
#define D,"DIGIT "
#define G" SIGN",
int main(){std::string a=" BRACKET",s="SQUARE"+a,c="CURLY"+a,t="TION MARK",p="PARENTHESIS",l="LEFT ",r="RIGHT ",x="LATIN ",y="L LETTER ",z[]{"SPACE","EXCLAMA"+t,"QUOTA"+t,"NUMBER"G"DOLLAR"G"PERCENT"G"AMPERSAND","APOSTROPHE",l+p,r+p,"ASTERISK","PLUS"G"COMMA","HYPHEN-MINUS","FULL STOP","SOLIDUS"D"ZERO"D"ONE"D"TWO"D"THREE"D"FOUR"D"FIVE"D"SIX"D"SEVEN"D"EIGHT"D"NINE","COLON","SEMICOLON","LESS-THAN"G"EQUALS"G"GREATER-THAN"G"QUES"+t,"COMMERCIAL AT",l+s,"REVERSE SOLIDUS",r+s,"CIRCUMFLEX ACCENT","LOW LINE","GRAVE ACCENT",l+c,"VERTICAL LINE",r+c,"TILDE"};getline(std::cin,s);for(char c:s)std::cout<<(c<65?z[c-32]:c<91?x+"CAPITA"+y+c:(c-=32,c<65?z[c-26]:c<91?x+"SMAL"+y+c:z[c-52]))+"\n";}

Basierend auf Sweerpotato-Lösung, jedoch stark modifiziert.

CryptoBob
quelle
Schön gemacht: ~)!
Sweerpotato
5

C 644 656

Volles Programm, Lesen von der Standardeingabe

Test auf Ideone

Dies ist eine Portierung meiner JavaScript-Antwort auf C. Die C-Sprache kann einzelne Zeichen gut als Zahlen manipulieren (keine Notwendigkeit für .toUpperCaseund dergleichen), aber sie ist schwächer in der String-Manipulation.

char*s,*p,*q,b[999],*d=b+99,c,*l[129];
main(k){for(k=32,p="/SPACE/EXCLAMAaQUOTAaNUMBERbDOLLARbPERCENTbAMPERSAND/APOSTROPHEdcecASTERISK/PLUSbCOMMA/HYPHEN-MINUS/FULL STOP/hiZEROiONEiTWOiTHREEiFOURiFIVEiSIXiSEVENiEIGHTiNINE/gSEMIgLESSnbEQUALSbGREATERnbQUESaCOMMERCIAL ATdkfREVERSE h/ekfCIRCUMFLEXj/LOWmGRAVEjdlfVERTICALmelfTILDE/";
c=*p;p++)c>96?q?(p=q,q=0):(q=p,p=strchr("aTION MARK/b SIGN/cPARENTHESIS/d/LEFT eRIGHT f BRACKET/gCOLON/hSOLIDUSi/DIGIT j ACCENTkSQUARElCURLYm LINE/n-THANz",c)):c-47?*d++=c:(*d++=0,l[k++]=d);
for(;~(k=getchar());puts(k<65?l[k]:(k&31)<27?b:l[k<97?k-26:k-52]))sprintf(b,"LATIN %s LETTER %c",k<91?"CAPITAL":"SMALL",k&95);}

Weniger golfen

char *all = "/SPACE/EXCLAMAaQUOTAaNUMBERbDOLLARbPERCENTbAMPERSAND/APOSTROPHEdcecASTERISK/PLUSbCOMMA/HYPHEN-MINUS/FULL STOP/hiZEROiONEiTWOiTHREEiFOURiFIVEiSIXiSEVENiEIGHTiNINE/gSEMIgLESSnbEQUALSbGREATERnbQUESaCOMMERCIAL ATdkfREVERSE h/ekfCIRCUMFLEXj/LOWmGRAVEjdlfVERTICALmelfTILDE/";
char *subs = "aTION MARK/b SIGN/cPARENTHESIS/d/LEFT eRIGHT f BRACKET/gCOLON/hSOLIDUSi/DIGIT j ACCENTkSQUARElCURLYm LINE/n-THANz";

main(int k)
{
    char c, *s, *p, *q=0, 
    b[999], // work buffer
    *d = b+99, // first part of buffer is used later
    *l[129]; // characters descriptions (used 32 to 126)

    // Uncompress the descriptions of all char except letters
    for(k = 32, p = all; c = *p; ++p)
    {
       c >= 'a' // substitution word are marked as lowercase letters
        ? q  
           ? (p = q, q = 0)
           : (q = p, p = strchr(subs, c))
        : c != '/'
           ? *d++ = c 
           : (*d++ = 0, l[k++] = d); // end char description
    }
    // Scan the input string and print each char description
    for(; (k=getchar()) != -1; )
    {
       sprintf(b,"LATIN %s LETTER %c", k<91 ? "CAPITAL":"SMALL", k & 95);
       puts( k<65 ? l[k] : k<91 ? b : k<97 ? l[k-26] : k<123 ? b : l[k-52]);
    }
}
edc65
quelle
4

Common Lisp (SBCL), 52 79

(map()(lambda(y)(format t"~:@(~A~)~%"(substitute #\  #\_(char-name y))))(read))

Dies ist integriert und von der Implementierung abhängig. Sie können es daher ignorieren, wenn Sie die akzeptierte Antwort auswählen. Dies ist leider nicht genug, um Python zu schlagen . Die aktualisierte Version entspricht der erwarteten Ausgabe (ich muss Unterstriche durch Leerzeichen ersetzen).

Beispiel

CL-USER> (map()(lambda(y)(format t"~:@(~A~)~%"(substitute #\  #\_(char-name y))))(read))
"(λ(r)(* 2 ᴨ r))"
LEFT PARENTHESIS
GREEK SMALL LETTER LAMDA
LEFT PARENTHESIS
LATIN SMALL LETTER R
RIGHT PARENTHESIS
LEFT PARENTHESIS
ASTERISK
SPACE
DIGIT TWO
SPACE
GREEK LETTER SMALL CAPITAL PI
SPACE
LATIN SMALL LETTER R
RIGHT PARENTHESIS
RIGHT PARENTHESIS
Core-Dump
quelle
4

Pyth, 41

$from unicodedata import name as neg$Vz_N

Verwendet dieselbe integrierte Funktion wie die Python-Antwort von mbomb007 . Beachten Sie, dass dies nicht online ausgeführt werden kann, da der $Bediener unsicher ist.

FryAmTheEggman
quelle
4

C ++ 14, 1043 1000 998 996 972 Bytes

Groteske Lösung in C ++ 14:

#include<iostream>
#include<map>
#define b cout
#define d string
#define e },{
using namespace std;char l='\n';d s[]{"DIGIT ","LATIN CAPITAL LETTER ","LATIN SMALL LETTER "};map<char, d> m{{' ',"SPACE"e'!',"EXCLAMATION MARK"e'\"',"QUOTATION MARK"e'#',"NUMBER SIGN"e'$',"DOLLAR SIGN"e'%',"PERCENT SIGN"e'&',"AMPERSAND"e'\'',"APOSTROPHE"e'(',"LEFT PARENTHESIS"e')',"RIGHT PARENTHESIS"e'*',"ASTERISK"e'+',"PLUS SIGN"e',',"COMMA"e'-',"HYPHEN-MINUS"e'.',"FULL STOP"e'/',"SOLIDUS"e':',"COLON"e';',"SEMICOLON"e'<',"LESS-THAN SIGN"e'=',"EQUALS SIGN"e'>',"GREATER-THAN SIGN"e'?',"QUESTION MARK"e'@',"COMMERCIAL AT"e'[',"LEFT SQUARE BRACKET"e'\\',"REVERSE SOLIDUS"e']',"RIGHT SQUARE BRACKET"e'^',"CIRCUMFLEX ACCENT"e'_',"LOW LINE"e'`',"GRAVE ACCENT"e'{',"LEFT CURLY BRACKET"e'|',"VERTICAL LINE"e'}',"RIGHT CURLY BRACKET"e'~',"TILDE"}};int main(){d str;getline(cin,str);for(char c:str){islower(c)?b<<s[2]<<(char)(c-32):isupper(c)?b<<s[1]<<c:isdigit(c)?b<<*s<<c:b<<m.at(c);b<<l;}}

Danke an kirbyfan64sos für das Golfen aus zwei Bytes

Süßkartoffel
quelle
Können Sie *sanstelle von tun s[0]?
kirbyfan64sos
Sicher kann! Total verpasst, dass
Sweerpotato
3

CJam, 517

l{i32-["SPACE""EXCLAMA""TION MARK":T+"QUOTA"T+"NUMBER DOLLAR PERCENT"{S/" SIGN"am*~}:H~"AMPERSAND""APOSTROPHE""LEFT PARENTHESIS":L"RIGHT ":R1$5>+"ASTERISK""PLUS"H"COMMA""HYPHEN-MINUS""FULL STOP""SOLIDUS":D"DIGIT "a"ZERO ONE TWO THREE FOUR FIVE SIX SEVEN EIGHT NINE"S/m*~"COLON""SEMI"1$+"LESS-THAN EQUALS GREATER-THAN"H"QUES"T+"COMMERCIAL AT""CAPITA"{["LATIN "\"L LETTER "]a'[,65>m*~L5<}:Z~"SQUARE BRACKET":Q+"REVERSE "D+RQ+"CIRCUMFLEX ACCENT""LOW LINE""GRAVE"2$A>+"SMAL"Z"CURLY"33$B>+:C+"VERTICAL LINE"RC+"TILDE"]=N}/

Online Version

Ich habe verschiedene Lösungen ausprobiert, aber das Speichern aller Namen in einem riesigen Array scheint am effizientesten zu sein.

Dies ist übrigens mein erstes richtiges CJam-Programm.

CryptoBob
quelle
3

C ++ 14 716 706 704

#include<iostream>
char*q,x,b[584],*t=b,a[]=R"(space}exclamation|mark}quot"-number|sign}dolla!apercent!mam"%sand}apostrophe}left|par%3hesis}righ"Wasterisk}plus*<comma}hy)#n{minus}full|stop}solid"Ldigit|zero!Tone!Gtw"kthre#&four!Uiv#&six!Heve>^!_e6r!ani,1colon}semi!Fless{than8Eequal:$grea<s$2quesMj>EJoial|at}lQ9n|capit"?let('|Jes+\re|bracket}r5urse|C5M?%2circumflex|acXR}low|l:bgrave#'0=smaNy0+curly*s/Ytic4z)$/\$itilde)",*s=a;int c,z,l='{';int main(){for(;x=*s++;)if(z=x-32,x>96)*t++=x<l?z:"- "[x%l];else for(c=z*95+*s++-32,q=t-c/13,x=3+c%13;x--;)*t++=*q++;while(std::cin.get(x)){for(s=b,z=0,c=x<65?x-32:x<91?z=33:x<97?x-57:x<l?z=40:x-82;c--;)while(*s++);auto&o=std::cout<<s;(z?o.put(x&~32):o)<<"\n";}}

Live-Version .

Mit etwas Leerzeichen:

#include <iostream>

// a is compressed using an LZ like compression scheme
char *q, x, b[584],
    *t = b,
    a[] =
        R"(space}exclamation|mark}quot"-number|sign}dolla!apercent!mam"%sand}apostrophe}left|par%3hesis}righ"Wasterisk}plus*<comma}hy)#n{minus}full|stop}solid"Ldigit|zero!Tone!Gtw"kthre#&four!Uiv#&six!Heve>^!_e6r!ani,1colon}semi!Fless{than8Eequal:$grea<s$2quesMj>EJoial|at}lQ9n|capit"?let('|Jes+\re|bracket}r5urse|C5M?%2circumflex|acXR}low|l:bgrave#'0=smaNy0+curly*s/Ytic4z)$/\$itilde)",
    *s = a;

int c, z, l = '{';

int main() {
    // Decompress from a into b
    for (; x = *s++;)
        if (z = x - 32, x > 96)
            *t++ = x < l ? z : "- "[x % l];
        else
            for (c = z * 95 + *s++ - 32, q = t - c / 13, x = 3 + c % 13; x--;) *t++ = *q++;

    // Process input a char at a time, performing a lookup into b for the c'th null separated string
    while (std::cin.get(x)) {
        for (s = b, z = 0,
            c = x < 65 ? x - 32 : x < 91 ? z = 33 : x < 97 ? x - 57 : x < l ? z = 40 : x - 82;
             c--;)
            while (*s++)
                ;
        auto& o = std::cout << s;
        (z ? o.put(x & ~32) : o) << "\n";
    }
}

Die komprimierte Zeichenfolge wird adekomprimiert, um:

Leerzeichen} Ausrufezeichen} Anführungszeichen} Zahl | Zeichen} Dollar | Zeichen} Prozent | Zeichen} Et-Zeichen} Apostroph} Links | Klammer} Rechts | Klammer} Sternchen} Plus | Zeichen} Komma} Bindestrich {Minus} Punkt} Solidus} Ziffer | Null} Ziffer | Eins} Ziffer | Zwei} Ziffer | Drei} Ziffer | Vier} Ziffer | Fünf} Ziffer | Sechs} Ziffer | Sieben} Ziffer | Acht} Ziffer | Neun} Doppelpunkt} Semikolon} kleiner {als | Zeichen} entspricht | Zeichen} größer {als | Zeichen} Fragezeichen} kommerziell | at} lateinisch | Großbuchstabe |} links | eckig | Klammer} umkehren | solidus} rechts | eckig | Klammer} Zirkumflex | Akzent} niedrig | Linie } grab | akzent} lateinisch | kleiner | buchstabe |} links | geschweifte | klammer} vertikal | linie} rechts | geschweifte | klammer} tilde

Und während der Dekompression }wird ersetzt durch \0,| mit (Leerzeichen) und {mit -und Kleinbuchstaben in Großbuchstaben umgewandelt.

Die Zeichenfolge wird im LZ-Stil entweder als Literal [a-~]oder als Offset / Länge mit zwei Zeichen zu einer früheren Übereinstimmung in der Zeichenfolge komprimiert .

mattnewport
quelle
3

Clojure, 56 Bytes

(doseq[c(read-line)](println(Character/getName(int c))))

Inspiriert von @ peters Antwort. Verwendet Clojure für die Java-Interop.

Meilen
quelle
3

Perl - 894 Bytes

Liebevoll von Hand gefertigt. Zum ersten Mal Golfen in Perl, daher sind alle Tipps willkommen.

$_=$ARGV[0];s/(.)/$1\n/g;s/([A-Z])/& CAPITAL' $1/g;s/([a-z])/& SMALL' \U$1/g;s/,/COMMA/g;s/& /LATIN /g;s/' / LETT, /g;s/&/AMP,SAND/g;s/'/APOSTROPHE/g;s/ \n/SPACE\n/g;s/\*/AST,ISK/g;s/-/HYPHEN-MINUS/g;s/\./FULL STOP/g;s/@/COMM,CIAL AT/g;s/~/TILDE/g;s/:/&/g;s/;/SEMI&/g;s/&/COLON/g;s/\|/V,TICAL&/g;s/_/LOW&/g;s/&/ LINE/g;s/\^/CIRCUMFLEX&/g;s/`/GRAVE&/g;s/&/ ACCENT/g;s/\//&/g;s/\\/REV,SE &/g;s/&/SOLIDUS/g;s/!/!&/g;s/"/"&/g;s/\?/?&/g;s/!/EXCLAMA/g;s/"/QUOTA/g;s/\?/QUES/g;s/&/TION MARK/g;s/#/NUMB,&/g;s/\$/DOLLAR&/g;s/%/P,CENT&/g;s/\+/PLUS&/g;s/</LESS-THAN&/g;s/=/EQUALS&/g;s/>/GREAT,-THAN&/g;s/&/ SIGN/g;s/\(/<&/g;s/\)/>&/g;s/&/ PARENTHESIS/g;s/\[/<&/g;s/\]/>&/g;s/&/ SQUARE'/g;s/{/<&/g;s/}/>&/g;s/&/ CURLY'/g;s/'/ BRACKET/g;s/</LEFT/g;s/>/RIGHT/g;s/0/&Z,O/g;s/1/&ONE/g;s/2/&TWO/g;s/3/&THREE/g;s/4/&FOUR/g;s/5/&FIVE/g;s/6/&SIX/g;s/7/&SEVEN/g;s/8/&EIGHT/g;s/9/&NINE/g;s/&/DIGIT /g;s/,/ER/g;print;
Luke
quelle
1

Faktor 58 Bytes

[ readln [ char>name "-"" " replace >upper print ] each ] 

Ziemlich einfach; macht genau das Gleiche wie die Java- und Perl 6-Antworten.

Katze
quelle
0

PHP> = 7, 54 Bytes Nicht kompetent

for(;a&$c=$argn[$i++];)echo"
".IntlChar::charName($c);

IntlChar :: charName

Jörg Hülsermann
quelle