Le défi est de analyser une chaîne comme Python et à imprimer le contenu de la chaîne.
- Entrée (argument de ligne de commande ou stdin) : un littéral de chaîne (par exemple
"hello") (ou plusieurs littéraux, voir la concaténation de littéral de chaîne ci-dessous) - Sortie (sortie standard) : le contenu de la chaîne (par exemple
hello)
Règles d'analyse de la chaîne:
- Un littéral de chaîne est entouré de paires correspondantes de guillemets simples (
'a'), de guillemets doubles ("a"), de guillemets simples triples ('''a''') ou de guillemets doubles triples ("""a"""). La première réapparition du type de guillemets qui a ouvert la chaîne termine la chaîne. - La barre oblique inverse s'échappe:
\'dans une chaîne devient',\"devient"et\\devient\. Vous n'avez pas besoin d'implémenter d'autres échappements de barre oblique inverse. Une barre oblique inverse qui ne fait pas partie d'une séquence d'échappement reste une barre oblique inverse. - Concaténation de littéraux de chaîne: le contenu des littéraux de chaînes adjacents est concaténé. Par exemple,
"hello" 'world'devienthelloworld. - L'entrée peut contenir des espaces qui ne font partie d'aucun littéral.
- Vous n'avez pas besoin de prendre en charge tout autre type d'espace, ni à l'intérieur ni à l'extérieur des littéraux.
Règles supplémentaires:
eval,execet des éléments similaires ne sont pas autorisés pour analyser le littéral ou des parties de celui-ci.- Vous pouvez supposer que l'entrée est valide.
- Vous pouvez supposer une longueur d'entrée maximale de 1023 caractères.
Exemples:
"hello" ' world'->hello world"""\"""'\\\A"""->"""'\\A( '''"""'''"""'''""" )(sans parenthèses, mais avec des espaces) ->"""'''
Le code le plus court gagne.