Entrada:
Una cadena que solo contiene los siguientes caracteres:
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.?!
(espacio al final) y dos caracteres especiales ( _
y |
)
Salida:
Refleje el texto en función de las posiciones de _
y |
.
_
espejos horizontalmente y |
espejos verticalmente.
Proceso de reflejo
- El primero
_
indica el inicio de la duplicación de esa subcadena, el segundo_
el final. - Si solo hay uno
_
presente, puede continuar hasta el final de la cadena. - Si hay más de dos
_
presentes, se repite el mismo proceso. - Solo puede haber uno
|
en la cadena, y esto invierte la primera subcadena y elimina la segunda subcadena.
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.?!
(espacio al final) se convertirá en ɐqɔpǝɟɓɥıɾʞlɯuodbɹsʇnʌʍxʎz∀𐐒ƆᗡƎℲ⅁HIſ⋊⅂WNOԀΌᴚS⊥∩ΛMX⅄Z0⇂ᘔƐ߈ϛ9ㄥ86˙¿¡
(espacio al final) cuando se refleje en _
(haga clic en el enlace para los valores Unicode; requiere Unicode v8.0 +).
Ejemplo de entrada 1: _Will I be mirrored?!
Salida 1: Mıll I qǝ ɯıɹɹoɹǝp¿¡
Ejemplo de entrada 2: Wi_ll I be mi_rrored?!
Salida 2: Will I qǝ ɯırrored?!
Cuando se refleja |
simplemente revertimos la subcadena de 0 a índice de |
.
Ejemplo de entrada 1: Will I be mirror|ed?!
Salida 1: Will I be mirrorrorrim eb I lliW
Ambos espejos ( _
y |
) pueden estar presentes en la cadena.
Reglas generales:
- Este es el código de golf , por lo que la respuesta más corta en bytes gana.
No permita que los lenguajes de code-golf lo desanimen a publicar respuestas con lenguajes que no sean codegolfing. Trate de encontrar una respuesta lo más breve posible para 'cualquier' lenguaje de programación. - Se aplican reglas estándar para su respuesta, por lo que puede usar STDIN / STDOUT, funciones / método con los parámetros adecuados, programas completos. Tu llamada.
- Las lagunas predeterminadas están prohibidas.
- Si es posible, agregue un enlace con una prueba para su código.
- Además, agregue una explicación si es necesario.
Casos de prueba:
_Will I be mirrored?! -> Mıll I qǝ ɯıɹɹoɹǝp¿¡
Wi_ll I be mi_rrored?! -> Will I qǝ ɯırrored?!
Will I be mirror|ed?! -> Will I be mirrorrorrim eb I lliW
This_ is a test_ cont_aining bo|t_h mirrors. -> This ıs ɐ ʇǝsʇ contɐıuıuɓ qooq ɓuıuıɐtnoc ʇsǝʇ ɐ sı sihT
0_1_2_3_4_5|_6_7_8_9 -> 0⇂2Ɛ4ϛϛ4Ɛ2⇂0