Artikel Spinnen mit Spintax
Article Spinning ist eine Suchmaschinenoptimierungstechnik, mit der Suchmaschinenoptimierer eine eindeutige Version des relevanten Inhalts in Artikelverzeichnissen, Web 2.0-Sites oder anderen Quellen für Backlinks veröffentlichen.
Es wird gelegentlich von Website-Autoren auf ihren eigenen Websites verwendet, jedoch in der Regel vermieden, da die Qualität von gesponnenen Inhalten geringer ist als von Hand geschriebene Inhalte. Beim Drehen werden vorhandene Artikel oder Teile von Artikeln umgeschrieben und bestimmte Wörter, Ausdrücke, Sätze oder sogar ganze Absätze durch eine beliebige Anzahl alternativer Versionen ersetzt, um bei jeder Drehung eine geringfügig andere Variation bereitzustellen.
Dieser Vorgang kann vollständig automatisiert oder manuell umgeschrieben werden. Ihre Aufgabe heute wird es sein, ein Programm oder eine Funktion zu erstellen, die eine Zeichenfolge interpretiert , die Spintax enthält , die Syntax, mit der ein Programm die verschiedenen verfügbaren Optionen liest. Unten ist eine Beispielzeichenfolge, die Spintax verwendet:
{Hello|Hi there|Bonjour}, user! {What's up?|How are you?|Feeling alright?|I caught a fish!}
Wie Sie sehen, sind Abschnitte der Zeichenfolge, die 'gesponnen' werden sollen, in geschweiften Klammern eingeschlossen, wobei die einzelnen Optionen durch das |Zeichen getrennt werden. Hier sind einige Beispielsätze, die dies erzeugen könnte.
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!
Deine Arbeit
Ihre Aufgabe ist es, ein Programm oder eine Funktion zu erstellen, die eine Eingabezeichenfolge verwendet, die Spintax enthalten kann oder nicht , und dann 5 Versionen der Zeichenfolge auszudrucken, wobei Sie zufällig eine der Optionen aus jedem Optionsblock auswählen. Sie können einige Annahmen treffen:
- Sie müssen nicht mit verschachteltem Spintax (
{This|is {an|one}|example}) umgehen . - Die Zeichen
|,{und}werden an keiner anderen Stelle als in einem Spintax-Block vorkommen. - Sie müssen nicht überprüfen, ob die 5 Ausgabesätze unterschiedlich sind, solange der Code Optionen mithilfe der Zufallszahlenfunktion Ihrer Sprache auswählt.
- Sie können davon ausgehen, dass die Eingabe mit einem Zeilenumbruch endet.
Regeln
Tests
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#
Ein vierter Test ist hier zu finden .
Das ist Code-Golf , also gewinnt die geringste Anzahl von Bytes.
{, an dem,, in der Eingabezeichenfolge zu finden ist |, }ist der Ort, an dem sich Spintax befindet.