Benutzer:Tobias II/RC-Bot-Liste: Unterschied zwischen den Versionen

Aus GuildWiki
Wechseln zu:Navigation, Suche
(Liste)
Zeile 106: Zeile 106:
 
----
 
----
 
  # Alle Seiten sollten ein Leerzeichen beinhalten :D
 
  # Alle Seiten sollten ein Leerzeichen beinhalten :D
(?:\b(bla)+|\blo*l|rofl);<<ANFANG>>{{Bot-Flag|Sinnlose Änderungen}};
+
(?:\b(bla)+|\blo+l|rofl);<<ANFANG>>{{Bot-Flag|Sinnlose Änderungen}};
 
</pre>
 
</pre>
  

Version vom 30. Mai 2009, 00:56 Uhr

Diese Listen werden vom Letzten Änderungs-Bot verwendet. Sie dürfen natürlich, von jedem Benutzer der „autoconfirmed“ ist, erweitert werden. Erlaubt sind auch Reguläre Ausdrücke. Daher müssen folgende Zeichen mit einem führenden Backslash (\) versehen werden, wenn nach ihnen gesucht werden soll: / . + * ? ^ $ | ( ) [ ] { } \.

Kommentare kann man hinter eine Raute (#) oder zwei Schrägstriche (//) setzen. Diese Kommentare gehen bis zum Zeilenende. Mehrzeilige Kommentare sind zwischen /* und */ möglich. Zeilenumbrüche direkt vor Kommentarbeginn werden vor der Verarbeitung auch entfernt (Kommentarzeilen sind also möglich).

interne Änderungen

  • die Zeichenfolge \n wird durch einen Zeilenumbruch ersetzt

Textersetzungen

Die Liste wird von oben nach unten durchgegangen. Es wird nach Vorkommnissen der Zeichenketten links neben dem Semikolon gesucht. Wenn ein solches gefunden wird, wird es durch die Zeichenkette rechts neben dem Semikolon ersetzt. Geklammerte Teilausdrücke aus dem linken Teil können im Rechten mit $1, $2, $3 (usw.) referenziert werden.

Abbadon;Abaddon
Assasine;Assassine
ausser;außer
ausserdem;außerdem
Category;Kategorie
([Cc])harackter;$1harakter
daß;dass
Dervisc?h;Derwisch
Dschinns;Dschinn
einzigste;einzige
Foki;Fokusse
[gG]uild[wW]ars;Guild Wars
Hero\b;Held
(?<!Hall of )Heroes\b;Helden
Hinweiß;Hinweis
inschriftbar;gravierbar
([kK])aufbar;$1äuflich
Licht(?:s|-S)chaden;Sakral-Schaden
Monks;Mönche
Monk;Mönch
Necro;Nekro
NPC;NSC
[Oo]dgen;Ogden
([Ss])tandart(?!e);$1tandard
([Ss])tabelbar;$1tapelbar
Vabbi\b;Vaabi
\[\[(:?)[Ii]mage:;[[$1Bild:
{{smiley\|.*?}};
(\bder|\bden) Elite[ -]?[sS]kill\b;die Elite-Fertigkeit
\bdes Elite[ -]?[sS]kills\b|\bdem Elite[ -]?[sS]kill\b;der Elite-Fertigkeit
\bElite[ -]?[sS]kills\b;Elite-Fertigkeiten
(\bder|\bden) [sS]kill\b;die Fertigkeit
\bdes [sS]kills\b|\bdem [sS]kill\b;der Fertigkeit
\b[sS]kills\b;Fertigkeiten
[<\[]\/?[bB][>\]];'''
\[\[(.*?)\|\1(\w*?)\]\];[[$1]]$2
\[\[\{\{PAGENAME\}\}\]\];'''{{subst:PAGENAME}}'''
\{\{Vorlage:;{{
!{3,};!

Kontrolle auf richtige Richtlinien-Anwendung

Einzelne Kontrollblöcke werden hier mit ---- abgegrenzt. Innerhalb eines solchen Blocks steht in der ersten Zeile der reguläre Ausdruck nach dem in einem Artikel als erstes gesucht wird. Wenn er gefunden wird, dann kommen die folgenden Zeilen an die Reihe. Für jede dieser Zeilen gilt grundsätzlich folgendes:

  • Wenn;Dann;Sonst

Vor den Semikolons darf ein Zeilenumbruch eingefügt werden, obwohl im Folgenden nur von einzelnen Zeilen gesprochen wird.

der WENN-Teil

Im WENN-Teil werden einer oder mehrere reguläre Ausdrücke angegeben, die in bestimmter Art auf den Artikel zutreffen sollen. Folgende spezielle Zeichen gibt es:
  • Wenn ein ! am Anfang einer der regulären Ausdrücke steht, wird dieser umgekehrt. Während bei foo also irgendwo im Artikel die Zeichenfolge „foo“ vorkommen soll, soll sie bei !foo gerade nicht vorkommen!
  • Die einzelnen Ausdrücke können entweder durch && (UND-Verknüpfung) oder durch || (ODER-Verknüpfung) getrennt werden. Dabei darf (und muss manchmal sogar) vor und hinter diesen Trennzeichen jeweils ein Leerzeichen stehen.
Wenn der erste Abschnitt insgesamt zutrifft, kommt der zweite Abschnitt, der DANN-Teil, ins Spiel. Ansonsten der SONST-Teil (dritter Abschnitt).

Außerdem hat man folgende Option im Wenn-Teil:
  • Man kann vor einen regulären Ausdruck des Wenn-Teils folgende Parameter setzen (auch vor ein eventuell vorhandenes verneinendes Ausrufungszeichen):
    • <<DELIM>>: Damit müssen die Delimiter mit angegeben werden. Der Vorteil davon ist, dass man auch die Modifikatoren selber setzen kann. Welche das sind kann man hier nachlesen. Ohne <<DELIM>> ist der Modifikator s gesetzt.

der DANN- und der SONST-Teil

Ganz an den Anfang muss (!) eine Angabe gemacht werden, was mit der Zeichenkette im selben Teil passieren soll (es sei denn, man lässt den Teil ganz leer). Folgende Möglichkeiten gibt es:
  • ANFANG => ganz nach vorne im Artikel
  • ENDE => ganz nach hinten im Artikel
  • ERSETZE => nur im Dann-Teil; alle gefundenen Textstellen auf die eine der nicht negierten Ausdrücke im WENN-Teil passt, werden ersetzt. Dabei muss hinter das ERSETZE ein Bindestrich und dahinter die Zahl gesetzt werden den wievielten Ausdruck man verwenden will (1-basiert).

Liste

\{\{Infobox Quest
# Lösungs-Stub setzen wenn entweder die Überschrift "Lösung" fehlt,
# oder der entsprechende Abschnitt keinen Inhalt hat
!==\s?Lösung\s?== && !\{\{[Ss]tub\| || ==\s?Lösung\s?==\s+==[^=].*?== && !\{\{[Ss]tub\|
;<<ANFANG>>{{Stub|Quest|Lösung fehlt}}\n;
####
!==\s?Lösung\s?== && !\{\{[Ss]tub\|.*?[Ll]ösung.*?\}\} && \{\{[Ss]tub\|(.*?)\}\}
;<<ERSETZE-3>>{{Stub|$1, Lösung fehlt}};
####
# Wie bei Lösung nur für den Dialogsabschnitt
!==\s?Dialog\s?== && !\{\{[Ss]tub\| || ==\s?Dialog\s?==\s+==[^=].*?== && !\{\{[Ss]tub\|
;<<ANFANG>>{{Stub|Quest|Dialog fehlt}}\n;
####
!==\s?Dialog\s?== && !\{\{[Ss]tub\|.*?[Dd]ialog.*?\}\} && \{\{[Ss]tub\|(.*?)\}\}
;<<ERSETZE-3>>{{Stub|$1, Dialog fehlt}};
####
# Andere Ersetzungen auf Questseiten
==\s?NSCs?\s?==;<<ERSETZE-1>>== Quest-NSC ==;
'''\s?Quest-Zusammenfassung\s?''';<<ERSETZE-1>>'''Zusammenfassung''';
<<DELIM>>/'''(.*?[Dd]ialog mit)'''\s\[\[(.*)\]\](?:<br\s?\/>)?/;<<ERSETZE-1>>'''$1 [[$2]]''';
----
\{\{Infobox Einzigartige Waffe
!==\s?Werte\s?== && !\{\{[Ss]tub\|
;<<ANFANG>>{{Stub||Werte und/oder Überschrift fehlen, siehe [[GuildWiki:Stil und Formatierung/Einzigartige Waffen|Richtlinien]]}}\n;
----
\{\{Infobox Kreatur
# [[Elite]]-Links in "Verwendete Fertigkeiten"-Abschnitten zu [[Elite-Fertigkeit]]-Links machen
==\s?(?:Verwendete )?Fertigkeiten\s?==(.*?)\[\[Elite\]\](.*?)(?=\n==|$)
;<<ERSETZE-1>>== Verwendete Fertigkeiten ==$1[[Elite-Fertigkeit]]$2;
----
 # Alle Seiten sollten ein Leerzeichen beinhalten :D
(?:\b(bla)+|\blo+l|rofl);<<ANFANG>>{{Bot-Flag|Sinnlose Änderungen}};

ignorierte Zeichenketten

Für alles was hier aufgelistet wird, wird vor dem Ersetzungsvorgang intern ein Platzhalter eingesetzt. Nach dem Ersetzen wird der Platzhalter dann wieder durch den ursprünglichen Text ersetzt.

<!--.*?-->
\{\{[Ee][Nn]\|.*?\}\}
(?<!\[)(?:https?|ftp):\/\/.*(?=\s)
\[(?:https?|ftp):\/\/.*?\]
\[\[Bild:.*?\]\]
<(DPL|dpl)>.*?<\/\1>

Ausnahmen

Alle Artikel welche hier aufgelistet sind, werden von dem Bot übergangen. Über der Trennlinie „----“ stehen keine Regulären Ausdrücke. Unter der Linie schon.

Abkürzungen
Bot
Einblick des Angreifers
Fertigkeitensuche
Fertigkeitenvorlagencode
FFF
Gamer-Titel
GuildWars Visions
Hauptseite
Liste der Rollenspielfertigkeiten
Nicht-Spieler-Charakter # gewolltes "NPC"
Sakral-Schaden
Sandkasten
Vaabi
Verata der Nekromant (Tutorial)
Xunlai-Truhe # NPC im Zitat
----
\/Quests
englisch-deutsch
deutsch-englisch

Änderungen rückgängig machen

Messagebox info.png Hinweis: Dieser Teil ist noch nicht aktiv, sondern nur in Planung.

Wenn einer der regulären Ausdrücke unten passt, wird die ganze Änderung rückgängig gemacht.

<a.*?href=.*?>