Ceci est inspiré par Monday Mini-Golf # 6: Meeesesess uppeeexexextext
Contexte
Les productions ETH ont du mal à saisir du texte sur sa page Web habituelle. Chaque fois qu'il utilise des chiffres ou des lettres, le texte sera alors mesuré. Votre tâche consiste à l’aider à taper de manière à obtenir le comportement normal.
La transformation
La transformation affecte les exécutions de caractères alphanumériques ( [0-9A-Za-z]
) délimités par des caractères non alphanumériques. Dans l'exemple suivant, la première ligne serait transformée en seconde (les autres lignes montrent le détail de la transformation)
An12num:
Annn1n12n12nn12nn12nun12nun12numn12num
A
nn
n1
n12
n12nn12n
n12nun12nu
n12numn12num
En particulier, tout caractère alphanumérique après le premier d'une série sera transformé en une série complète, à l'exception du premier caractère . De plus, si le caractère est une lettre (par opposition à un chiffre), le caractère sera transformé en une double course.
Heureusement, le retour arrière effacera le dernier caractère et réinitialisera également le début de la course.
Tâche
Cette fois, votre tâche n'est pas d'effectuer la transformation. Au lieu de cela, étant donné une chaîne d'entrée, vous devez renvoyer un texte codé qui, s'il est transformé, donnera lieu à l'entrée. La sortie doit être aussi courte que possible, \<char>
comptée comme un seul caractère.
Le texte est codé comme suit:
\ -> \\
backspace character -> \b
linefeed -> \n
Vous pouvez écrire un programme ou une fonction en prenant l’entrée via STDIN (ou l’alternative la plus proche), un argument de ligne de commande ou une argumentation de fonction et en générant le résultat via STDOUT (ou l’alternative la plus proche), une valeur de retour de fonction ou un paramètre de fonction (out).
Cas de test
Chaque cas de test est constitué de deux lignes, la première étant entrée, la deuxième sortie.
Heeeeeelp me. It shouldn't be messed up.
Hee \blp\b me\b. It\b sh\bou\bld\bn't be\b me\bss\bed\b up\b.
alert("Hello, world!");
al\ber\bt("He\bll\bo, wo\brl\bd!");
1223234234523456
123456
1
chaque fois) dans les analyses.