Wenn Sie eine Zeichenfolge eingeben , schreiben Sie ein Programm, das einen Wahrheitswert an STDOUT oder einen entsprechenden Wert ausgibt, wenn die Eingabe eine gültige UUID ist, ohne reguläre Ausdrücke zu verwenden.
Eine gültige UUID ist
32 hexadezimale Ziffern, angezeigt in fünf durch Bindestriche getrennten Gruppen, in der Form 8-4-4-4-12 für insgesamt 36 Zeichen (32 alphanumerische Zeichen und vier Bindestriche).
Testfälle
0FCE98AC-1326-4C79-8EBC-94908DA8B034
=> true
00000000-0000-0000-0000-000000000000
=> true
0fce98ac-1326-4c79-8ebc-94908da8b034
=> true
0FCE98ac-1326-4c79-8EBC-94908da8B034
=> true
{0FCE98AC-1326-4C79-8EBC-94908DA8B034}
=> false (the input is wrapped in brackets)
0GCE98AC-1326-4C79-8EBC-94908DA8B034
=> false (there is a G in the input)
0FCE98AC 1326-4C79-8EBC-94908DA8B034
=> false (there is a space in the input)
0FCE98AC-13264C79-8EBC-94908DA8B034
=> false (the input is missing a hyphen)
0FCE98AC-13264-C79-8EBC-94908DA8B034
=> false (the input has a hyphen in the wrong place)
0FCE98ACD-1326-4C79-8EBC-94908DA8B034
=> false (one of the groups is too long)
0FCE98AC-1326-4C79-8EBC-94908DA8B034-
=> false (has a trailing hyphen)
0FCE98AC-1326-4C79-8EBC-94908DA8B034-123
=> false (too many groups)
0FCE98AC13264C798EBC94908DA8B034
=> false (there is no grouping)
Regeln
- Reguläre Ausdrücke sind nicht erlaubt
- Literaler Mustervergleich, der einem regulären Ausdruck gleicht, ist nicht zulässig. Verwenden Sie beispielsweise
[0-9a-fA-F]
oder andere hexadezimale Bezeichner (wir nennen diesn
) und stimmen Sie dann übereinnnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn
odern[8]-n[4]-n[4]-n[4]-n[12]
sind nicht zulässig - Die Eingabe kann entweder
STDIN
einer Funktion entnommen oder als Argument für eine Funktion verwendet werden - Die Eingabe unterscheidet nicht zwischen Groß- und Kleinschreibung
- Es ist davon auszugehen, dass die Eingabe keine Zeilenvorschübe oder Zeilenumbrüche enthält.
- Die Eingabe kann beliebige druckbare ASCII-Zeichen enthalten (einschließlich Leerzeichen)
- Ein wahrer Wert muss auf
STDOUT
oder gleichwertig gedruckt werden, wenn die Eingabe eine gültige UUID ist - Ein falsey-Wert muss auf
STDOUT
oder gleich gedruckt werden, wenn die Eingabe keine gültige uuid ist - Bei Verwendung einer Funktion
STDOUT
kann die Ausgabe anstelle der Funktion der Rückgabewert der Funktion sein - Der Wert für Wahr / Falsch kann nicht gedruckt werden
STDERR
. - Es gelten Standardlücken
- Das ist Code-Golf , also gewinnt das kürzeste Programm in Bytes. Viel Glück!
Bestenliste
Dies ist ein Stack-Snippet, das sowohl eine Rangliste als auch eine Übersicht der Gewinner nach Sprache generiert.
Um sicherzustellen, dass Ihre Antwort angezeigt wird, beginnen Sie Ihre Antwort mit einer Überschrift unter Verwendung der folgenden Markdown-Vorlage
## Language Name, N bytes
Wobei N die Größe Ihrer Übermittlung in Byte ist
Wenn Sie mehrere Zahlen in Ihre Kopfzeile aufnehmen möchten (z. B. alte Punkte durchstreichen oder Flags in die Byteanzahl aufnehmen möchten), stellen Sie sicher, dass die tatsächliche Punktzahl die letzte Zahl in Ihrer Kopfzeile ist
## Language Name, <s>K</s> X + 2 = N bytes
\h{8}-\h{4}-\h{4}-\h{4}-\h{12}
(wobei \h
es sich um eine hexadezimale Ziffer handelt) gültig sind.