Wenn Sie eine Zeichenfolge angegeben haben, müssen Sie sie in Gruppen von drei Zeichen aufteilen (durch Auffüllen
_
am Ende).Verbunden , aber immer noch anders.
Beispiel-E / A:
'abcde' -> 'abc', 'de_'
'1234' -> '123', '4__'
'' -> [] or falsey value
'Three spree!' -> 'Thr', 'ee ', 'spr', 'ee!'
Dies ist ein Code-Golf , so dass nur wenige Bytes gewinnen!
Bearbeiten: Schließlich ist die Ausgabe uneingeschränkt .
Antworten:
05AB1E ,
98 BytesProbieren Sie es online! oder als Testsuite
Erläuterung
quelle
Python 3,
58 4734 BytesIch bin sicher, jemand anderes kann es besser machen.Jemand anderes hat es besser gemacht. Danke Jo King für-11-24 Bytes!Die Ausgabe ist uneingeschränkt, willkommen zum Tupeln der Hölle. Gibt bei leerer Eingabe eine leere Liste ( falsch ) zurück
TIO
quelle
JavaScript, 25 Byte
Versuch es
quelle
Perl 5 ,
16,15 BytesProbieren Sie es online!
quelle
"@_\__"=~/.../g
. Es gab andere 16er:(pop.__)=~/.../g
odermap/.../g,pop.__
.APL + WIN
36 2422 Bytes12 Bytes wurden gespeichert, da die Ausgabe nun freigegeben wurde und der Code in @ Adáms erstem Kommentar verwendet wurde, der für APL + WIN geändert wurde, und weitere 2 Bytes mit seinem zweiten Kommentar. Vielen Dank.
Fordert zur Eingabe des Strings auf und gibt das Ergebnis als nx3-Array aus
Probieren Sie es online! Mit freundlicher Genehmigung von Dyalog Classic
quelle
''
, nein? Ich denke, OP (aus irgendeinem seltsamen Grund) erfordert, dass das Ergebnis0
(mit irgendeinem Rang) ist.JavaScript,
51 50 48 2725Probieren Sie es online!
quelle
Perl 6 , 19 Bytes
Probieren Sie es online!
Füllt die Zeichenfolge mit zwei Unterstrichen auf und teilt sie dann in Abschnitte mit drei Zeichen auf. Gibt als Array von Match-Objekten zurück.
quelle
Japt , 8 Bytes
+1 Byte zum Sonderfall der leeren Zeichenkette. Kann 2 sparen, wenn wir unseren Füllcharakter wählen können.
Versuch es
quelle
Stax , 7 Bytes
Führen Sie es aus und debuggen Sie es
Bei einer Eingabe eines leeren Strings ist das Ergebnis ein leeres Array, bei dem es sich um einen falschen Wert in stax handelt.
quelle
CJam , 11 Bytes
Probieren Sie es online!
Bei leerer Eingabe wird ein leerer String ausgegeben, der falsch ist.
Wie es funktioniert
quelle
Retina 0.8.2 , 10 Bytes
Probieren Sie es online! Link enthält Testfälle. Erläuterung:
Fügen Sie zwei
_
s hinzu, falls die letzte Gruppe aufgefüllt werden muss.Ordnen Sie so viele Dreiergruppen wie möglich zu und geben Sie die Übereinstimmungen statt der Zählung selbst aus. (In Retina 1 wäre dies
L
statt!
.)quelle
C (gcc) , 67 Bytes
Probieren Sie es online!
Gibt immer einen Falsey-Wert (0) zurück.
quelle
Wolfram Language (Mathematica) ,
2821 Bytes-7: Benötigt keinen falsy (
False
) Wert mehr bei leerer EingabeProbieren Sie es online!
Nimmt eine Liste von Zeichen als Eingabe. Gibt eine Liste mit 3 Tupeln von Zeichen zurück, die mit
Blank
s (_
) aufgefüllt sind .3427 BytesProbieren Sie es online!
String-Eingabe, Liste der ausgegebenen Strings
quelle
Gelee , 9 Bytes
Ein monadischer Link, der eine Liste von Zeichen akzeptiert, die eine Liste von Listen von Zeichen ergibt (eine leere Eingabe ergibt eine leere Ausgabe).
Probieren Sie es online!
Wie?
Hinweise:
Das
€
ist nur notwendig, um den Kantenfall einer leeren Eingabe zu behandeln.Ein vollständiges Programm kann ein Trailing löschen
”
, aber hier können wir das nicht tun, da das Druckverhalten eines vollständigen Programms alles zusammenbricht.Äquivalent 9:
Versuch es
Alternative 9:
Versuch es
quelle
J , 16 Bytes
Probieren Sie es online!
K (OK) ,
1917 Bytes-2 Bytes dank ngn!
Probieren Sie es online!
quelle
(0N;3)
->0N 3
Java 10,
116113 BytesProbieren Sie es online aus.
Oder
104101 Bytes wenn stattfalse
als Ausgabe ein leeres Array erlaubt ist.Probieren Sie es online aus.
Erläuterung:
quelle
Ruby,
7342 BytesBearbeiten: Da Falsey-Wert aussieht, als wäre er nicht erforderlich:
quelle
'_'*2
ausreichend, da ein Literal'__'
kürzer ist. Wenn Sie jedoch die Polsterung im Voraus hinzufügen, stimmen die Teile, die kürzer als 3 Zeichen sind, einfach nicht übereinputs"#{gets}__".scan /.../
. (Beachten Sie, dass ohne den expliziten Druck, derirb
nicht berücksichtigt wirdruby
.)C # (Visual C # Interactive Compiler) , 74 Byte
Fügen Sie einfach zwei Unterstriche '_' am Ende der Eingabe hinzu, um sicherzustellen, dass sie gedruckt werden, wenn die Länge der Eingabe nicht den Faktor 3 hat.
Probieren Sie es online!
quelle
Kotlin , 34 Bytes
Probieren Sie es online!
quelle
{"${it}___".chunked(3).dropLast(1)}
C (gcc) , 55 Bytes
Probieren Sie es online!
quelle
\t
) anstelle von 10 (\n
) sollte in Ordnung sein, aber das ist nicht das WichtigsteC (clang) ,
1281269467 Bytes67 Bytes dank @ceilingcat
Probieren Sie es online!
quelle
Bash , 90 Bytes
Dabei werden Bash-Funktionen anstelle einer Kombination aus herkömmlicherer Bourne-Shell und * nix-Befehlen verwendet (wobei eine von mir erstellte Version 205 Byte aufwies). Ich habe betrogen, indem ich zwei _-Zeichen zur Zeichenfolge hinzugefügt habe.
Probieren Sie es online!
quelle
PowerShell ,
5835 Byte-23 bytes dank mazzy .
Probieren Sie es online!
quelle
GNU sed , 27 Bytes
Probieren Sie es online!
Bei der Eingabe eines leeren Strings wird es etwas knifflig, da sed keinen falschen Wert hat. Um dies zu bewältigen, biete ich Ihnen zwei mögliche Interpretationen der Regeln an, um meine Einreichung zu validieren:
EIN. Sie geben im Wesentlichen nichts als Eingabe ein, nicht einmal eine nachgestellte Zeile (wie bei allen Beispielen, einschließlich dieser 6-Mb-Datei).
Verwendung:
Ausgabe: Es wird nichts gedruckt, da sed das Skript nicht einmal ohne Eingabe ausführt.
B. Als falscher Wert für sed kann eine eindeutige Zeichenfolge angesehen werden, die nur zurückgegeben wird, wenn die Eingabe eine leere Zeichenfolge ist.
Verwendung:
Ausgabe:
Ich bevorzuge die erste Interpretation viel mehr, da sie meiner Meinung nach der beabsichtigten Regel am nächsten kommt, aber die letzte hilft, wenn Sie das Skript über diesen TIO-Link ausführen.
quelle
JavaScript (Babel Node) , 45 Byte
Probieren Sie es online!
quelle
Gelee , 10 Bytes
Probieren Sie es online!
Es fühlt sich an, als ob eine 8 oder 9 möglich sein sollte, aber ich habe noch keine gefunden.
quelle
Attache ,
3423 BytesProbieren Sie es online!
Erklärung (veraltet)
quelle
Kohle , 10 Bytes
Probieren Sie es online! Link ist eine ausführliche Version des Codes. Erläuterung:
quelle
Scala , 31 Bytes
Probieren Sie es online!
Erläuterung
quelle
Befunge-93 ,
3029 BytesProbieren Sie es online!
Gibt nichts für eine leere Eingabe aus, andernfalls werden Zeichenfolgen der Länge 3 ausgegeben, die durch NUL-Zeichen getrennt sind.
Erläuterung:
quelle