Artículo girando con Spintax
La rotación de artículos es una técnica de optimización de motores de búsqueda mediante la cual los optimizadores de motores de búsqueda publican una versión única de contenido relevante en directorios de artículos, sitios web 2.0 u otras fuentes de backlinks.
Los autores del sitio web lo utilizan ocasionalmente en sus propios sitios, pero generalmente se evita porque la calidad del contenido hilado será inferior a la del contenido escrito a mano. Spinning funciona reescribiendo artículos existentes, o partes de artículos, y reemplazando palabras, frases, oraciones o incluso párrafos enteros específicos con cualquier número de versiones alternativas para proporcionar una variación ligeramente diferente con cada giro.
Este proceso puede ser completamente automatizado o reescrito manualmente. Su trabajo hoy será crear un programa o función que interprete una cadena que contenga Spintax , la sintaxis mediante la cual un programa leería las diferentes opciones disponibles. A continuación se muestra una cadena de ejemplo que usa Spintax:
{Hello|Hi there|Bonjour}, user! {What's up?|How are you?|Feeling alright?|I caught a fish!}
Como puede ver, las secciones de la cadena que se deben 'girar' están encerradas entre llaves, donde el |carácter divide las opciones individuales . Aquí hay algunas oraciones de ejemplo que esto podría producir.
Hi there, user! What's up?
Hello, user! How are you?
Bonjour, user! Feeling alright?
Hello, user! What's up?
Hi there, user! I caught a fish!
Tu trabajo
Su misión, si elige aceptarla, es crear un programa o función que tome una cadena de entrada que pueda contener o no Spintax , luego imprima 5 versiones de la cadena, seleccionando al azar una de las opciones de cada bloque de opciones. Puedes hacer algunas suposiciones:
- No necesitará manejar Spintax anidado (
{This|is {an|one}|example}). - Las
|,{y los}caracteres no se producen en ningún otro lugar que no sea dentro de un bloque Spintax. - No necesita verificar si las 5 oraciones de salida son distintas, siempre que el código seleccione opciones utilizando la función de números aleatorios de su idioma.
- Puede suponer que la entrada termina con una nueva línea.
Reglas
Pruebas
1. {A|The|One} {quick|magnificent|charming|lucky|fast|super|cool} {gold|tan|yellow|white|brown|silver} {beaver|packrat|cat|lion|tiger|fox|dog|wolf} {consumed|ate|pilfered} my {pastry|strudel|cake}.
-------------------------------------------
One cool brown wolf consumed my pastry.
...(3 more here)...
The charming yellow beaver ate my cake.
-------------------------------------------
2. This sentence is valid, and happens to have no Spintax!
-------------------------------------------
This sentence is valid, and happens to have no Spintax!
...(3 more here)...
This sentence is valid, and happens to have no Spintax!
-------------------------------------------
3. {beg|get|ton|sun|bun|can|top|big}{2|3|4|5}{A|B|C|D|E|F|G}{2|3|4|5|6|7}{at|as|be|ex|hi|}{!|#|%}
-------------------------------------------
top2F2hi%
...(3 more here)...
big3E4ex#
Una cuarta prueba se puede encontrar aquí.
Este es el código de golf , por lo que gana la menor cantidad de bytes.
{, |, }se va a encontrar en la cadena de entrada es donde hay Spintax.