Vorlage:NUMBEROFCARDS: Unterschied zwischen den Versionen
WiMu (Diskussion | Beiträge) K |
WiMu (Diskussion | Beiträge) K (so, mal gespannt ...) |
||
Zeile 1: | Zeile 1: | ||
− | {{#expr:{{#dpl: | + | <!-- hier wird der Parameter definiert, der überprüft werden soll |
+ | -- | ||
+ | -->{{#vardefine:matchparameter|{{lc:{{#explode:{{{match|}}}|:|0}}}}}}<!-- | ||
+ | -- | ||
+ | -- und hier der Wert, den der Parameter haben muss | ||
+ | -- | ||
+ | -->{{#vardefine:matchvalue|{{lc:{{#explode:{{{match|}}}|:|1}}}}}}<!-- | ||
+ | -- | ||
+ | -- Das ergibt dann folgenden regulären Ausdruck | ||
+ | -- | ||
+ | -->{{#vardefine:includematch|{{#if:{{{match|}}}|/\¦\s*{{#var:matchparameter}}\s*=\s*{{#var:matchvalue}}\s*\n/}}}}<!-- | ||
+ | -- | ||
+ | -- und jetzt das Ganze für das nomatch-Gedöhnse | ||
+ | -- | ||
+ | -->{{#vardefine:nomatchparameter|{{lc:{{#explode:{{{nomatch|}}}|:|0}}}}}}<!-- | ||
+ | -- | ||
+ | -- und hier der Wert, den der Parameter haben muss | ||
+ | -- | ||
+ | -->{{#vardefine:nomatchvalue|{{lc:{{#explode:{{{nomatch|}}}|:|1}}}}}}<!-- | ||
+ | -- | ||
+ | -- Das ergibt dann folgenden regulären Ausdruck | ||
+ | -- | ||
+ | -->{{#vardefine:noincludematch|{{#if:{{{nomatch|}}}|/\¦\s*{{#var:nomatchparameter}}\s*=\s*{{#var:nomatchvalue}}\s*\n/}}}}<!-- | ||
+ | -- | ||
+ | -- Das wir jetzt in die Datenbank und das Ergebnis in eine Variable | ||
+ | -- | ||
+ | -->{{#vardefine:number|{{#expr:{{#dpl: | ||
+ | |debug=0 | ||
+ | |noresultsheader=0 | ||
|mode=userformat | |mode=userformat | ||
|namespace=Projekt | |namespace=Projekt | ||
|titlematch=Ka-Mel-Oh!/Datenbank% | |titlematch=Ka-Mel-Oh!/Datenbank% | ||
+ | |includematch={{#var:includematch}} | ||
+ | |includenotmatch={{#var:noincludematch}} | ||
|include={Ka-Mel-Oh}!/NUMBEROFCARDS | |include={Ka-Mel-Oh}!/NUMBEROFCARDS | ||
− | }}}}<noinclude> | + | }}}}}}<!-- |
+ | -- | ||
+ | -- Zum Abschluss schauen wir, ob unser Ergebnis numerisch ist | ||
+ | -- | ||
+ | -->{{#if:{{IstZahl|{{#var:number}}}}|{{#var:number}}|<span style="color:red; font-weight:bold;">Da ist wohl was schief gelaufen</span>}}<noinclude> | ||
---- | ---- | ||
− | |||
− | [[Kategorie:Vorlagen für Ka-Mel-Oh!]]</noinclude> | + | <div class="hs-box" style="background-color:ivory;border:1px solid #ffa500; font-size:1; padding:-5px;"> |
+ | |||
+ | Die Vorlage gibt die Anzahl an [[Projekt:Ka-Mel-Oh!|Ka-Mel-Oh!]]-Spielkarten zurück, die aktuell in den [[Projekt:Ka-Mel-Oh!/Datenbank|Datenbanken]] enthalten sind. Die Suche lässt sich mit den zwei Variablen <code>'''<nowiki>{{{match}}}</nowiki>'''</code> und <code>'''<nowiki>{{{nomatch}}}</nowiki>'''</code> auf Karten eingrenzen, die einen bestimmten Parameter mit einem bestimmten Wert enthalten. Die Syntax ist <code><nowiki>{{NUMBEROFCARDS|match =</nowiki> '''Parametername:Wert'''}}</code> bzw. <code><nowiki>{{NUMBEROFCARDS|nomatch =</nowiki> '''Parametername:Wert'''}}</code> (Die Kombination aus <code>'''<nowiki>{{{match}}}</nowiki>'''</code> und <code>'''<nowiki>{{{nomatch}}}</nowiki>'''</code> ist möglich). | ||
+ | |||
+ | Z.B. ergibt der Aufruf <code><nowiki>{{NUMBEROFCARDS|match = typ:item}}</nowiki></code> die aktuelle Anzahl der Item-Karten (Achtung: ohne Fusions- und Mutations-Items!), nämlich {{NUMBEROFCARDS|match = typ:item}}, der Aufruf <code><nowiki>{{NUMBEROFCARDS|nomatch = handicap:sonder}}</nowiki></code> die Anzahl aller regulären Karten ohne Sonderkarten, nämlich {{NUMBEROFCARDS|nomatch = handicap:sonder}} und der Aufruf <code><nowiki>{{NUMBEROFCARDS|match = typ:item|nomatch = handicap:sonder}}</nowiki></code> die Anzahl aller regulären Item-Karten, nämlich {{NUMBEROFCARDS|match = typ:item|nomatch = handicap:sonder}} <small>zumindest würde die Vorlage die passenden Werte zurückgeben, wenn die Datenbanken schon fertig wären.</small>. | ||
+ | |||
+ | Eignet sich damit prima zum [[Projekt:Ka-Mel-Oh!/Häufigkeiten|Schwanzlängenvergleich]] (<code><nowiki>{{NUMBEROFCARDS|match = autor:Dein Kamelname}}</nowiki></code>). | ||
+ | |||
+ | Man kann der Vorlage auch reguläre Ausdrücke übergeben (Perl-Syntax), aber damit kann man ganz schön viel kaputt machen, wenn man sich nicht damit auskennt (doofe Fehlermeldungen und so). Grundsätzlich muss Wiki ziemlich rumrechnen (was [[Kamel:MediaWiki default|er/sie]] gar nicht mag), und darum sollte man das Ding vielleicht etwas sparsamer einsetzen, als ich das hier gerade tue ... | ||
+ | </div>[[Kategorie:Vorlagen für Ka-Mel-Oh!]]</noinclude> |
Version vom 12. Februar 2009, 19:59 Uhr
Fehler im Ausdruck: Nicht erkanntes Satzzeichen „[“
Die Vorlage gibt die Anzahl an Ka-Mel-Oh!-Spielkarten zurück, die aktuell in den Datenbanken enthalten sind. Die Suche lässt sich mit den zwei Variablen {{{match}}}
und {{{nomatch}}}
auf Karten eingrenzen, die einen bestimmten Parameter mit einem bestimmten Wert enthalten. Die Syntax ist {{NUMBEROFCARDS|match = Parametername:Wert}}
bzw. {{NUMBEROFCARDS|nomatch = Parametername:Wert}}
(Die Kombination aus {{{match}}}
und {{{nomatch}}}
ist möglich).
Z.B. ergibt der Aufruf {{NUMBEROFCARDS|match = typ:item}}
die aktuelle Anzahl der Item-Karten (Achtung: ohne Fusions- und Mutations-Items!), nämlich Fehler im Ausdruck: Nicht erkanntes Satzzeichen „[“, der Aufruf {{NUMBEROFCARDS|nomatch = handicap:sonder}}
die Anzahl aller regulären Karten ohne Sonderkarten, nämlich Fehler im Ausdruck: Nicht erkanntes Satzzeichen „[“ und der Aufruf {{NUMBEROFCARDS|match = typ:item|nomatch = handicap:sonder}}
die Anzahl aller regulären Item-Karten, nämlich Fehler im Ausdruck: Nicht erkanntes Satzzeichen „[“ zumindest würde die Vorlage die passenden Werte zurückgeben, wenn die Datenbanken schon fertig wären..
Eignet sich damit prima zum Schwanzlängenvergleich ({{NUMBEROFCARDS|match = autor:Dein Kamelname}}
).
Man kann der Vorlage auch reguläre Ausdrücke übergeben (Perl-Syntax), aber damit kann man ganz schön viel kaputt machen, wenn man sich nicht damit auskennt (doofe Fehlermeldungen und so). Grundsätzlich muss Wiki ziemlich rumrechnen (was er/sie gar nicht mag), und darum sollte man das Ding vielleicht etwas sparsamer einsetzen, als ich das hier gerade tue ...