A menos que tenga un script de usuario que modifique el diseño del sitio (o incluso si es así), ¡debería haber notado que tenemos nuestro diseño del sitio!
Entonces, para celebrar, ¡hagamos un programa que aplique retroactivamente este diseño (simplificado en exceso, por supuesto)!
Entonces, los cambios más importantes son:
- nuestro nuevo nombre ahora es Code Golf y Coding Challenges
- nuestro sitio ya no es el color azul predeterminado y, en cambio, es un bonito verde oscuro
Entonces, dada una cadena, cambie:
PPCG
aCGCC
Programming Puzzles {non-whitespace} Code Golf
aCode Golf {same-thing} Coding Challenges
(por ejemplo,Programming Puzzles + Code Golf
,and Code Golf
, y& Code Golf
todo habría cambiado aCode Golf + Coding Challenges
,and Coding Challenges
y& Coding Challenges
.#abc
a#acb
(cambiar de azul a verde y viceversa, simplemente ignorar el hecho de que el verde no debería convertirse lógicamente en azul, pero no quiero complicar el cambio de color)#abcdef
a#abefcd
(igual que el anterior)
Tenga en cuenta que para los intercambios de color, debe aceptar cualquier dígito hexadecimal de 0-9
a a-f
. Puede elegir qué caso de dígito hexadecimal requerirá, pero debe ser coherente e igual desde la entrada hasta la salida.
Sus sustituciones pueden distinguir entre mayúsculas y minúsculas, y si no, especifique cómo funciona la salida.
Las sustituciones solo deben ocurrir cuando la cadena está rodeada por límites de palabras (incluido el inicio de la #
). En otras palabras, cada una de las sustituciones especificadas solo debe ocurrir si la coincidencia está en el borde de la cadena o está bordeada por caracteres no alfanuméricos (en ambos lados).
Se aplican lagunas estándar. Este es un desafío de código de golf, por lo que gana el código más corto.
Ejemplos
PPCG -> CGCC
Programming Puzzles or Code Golf -> Code Golf or Coding Challenges
PPCG stands for Programming Puzzles and Code Golf and its site color is #abf -> CGCC stands for Code Golf and Coding Challenges and its site color is #afb
The color #00f is much more intense than #5568ed -> The color #0f0 is much more intense than #55ed68
Programming Puzzles and No Substitution -> Programming Puzzles and No Substitution
No Substitution and Code Golf -> No Substitution and Code Golf
Programming Puzzles and no substitution Code Golf -> Programming Puzzles and no substitution Code Golf
Code Golf and Programming Puzzles -> Code Golf and Programming Puzzles
Programming Puzzles and Programming Puzzles and Code Golf -> Programming Puzzles and Code Golf and Coding Challenges
(para el último caso de prueba, es importante tener en cuenta que la cadena traducida podría traducirse nuevamente, pero la transformación debe aplicarse exactamente una vez)
Actualización importante
(Gracias @tsh)
La Programming Puzzles ... Code Golf
regla de sustitución puede incluir otras reglas dentro de ella ( Programming Puzzles PPCG Code Golf
es válida). En este caso, puede elegir si se aplican o no las reglas, pero debe ser determinista. No estoy exigiendo que sea coherente entre PPCG
y #...
porque las respuestas parecen implementar las reglas en mi orden de lista, lo que resulta en inconsistencias. Esto es solo una aclaración; Creo que todas las respuestas actuales siguen siendo válidas.
Programming Puzzles and no substitution Code Golf
que también podría atrapar a alguien (aunque todos
Code Golf and Programming Puzzles
y Programming Puzzles and Programming Puzzles and Code Golf
. @Veskah Hmm, y creo que el último caso de prueba sugerido falla en mi respuesta 05AB1E, ya que no tengo expresiones regulares ...>. <Volver a la mesa de dibujo ...