Modèle:Crafts Utilisant : Différence entre versions

De Wiki'speria
Aller à : navigation, rechercher
Ligne 4 : Ligne 4 :
 
   |uses=Template:Grid/Crafting Table
 
   |uses=Template:Grid/Crafting Table
 
   |includepage={Grid/Crafting Table}
 
   |includepage={Grid/Crafting Table}
   |includematch=/[ABC][123]\s*=\s*{{#replace:{{{1|{{#replace:{{PAGENAME}}|'|'}}}}}|([()\\+*.?'])|\\\1}}[\s]*(\{{!}}{{!}}\n)/s
+
   |includematch=/[ABC][123]\s*=\s*([^\x2c{{!}}]*\x2c\s*)*{{#replace:{{{1|{{#replace:{{PAGENAME}}|'|'}}}}}|([()\\+*.?'])|\\\1}}\s*[\x2c{{!}}\n]/s
 
   |noresultsheader=  
 
   |noresultsheader=  
 
   |format  = ,\n* [[%PAGE%|%TITLE%]]\n,,
 
   |format  = ,\n* [[%PAGE%|%TITLE%]]\n,,
Ligne 12 : Ligne 12 :
 
   |uses=Template:Grid/Furnace
 
   |uses=Template:Grid/Furnace
 
   |includepage={Grid/Furnace}
 
   |includepage={Grid/Furnace}
   |includematch=/Input\s*=\s*{{#replace:{{{1|{{#replace:{{PAGENAME}}|'|'}}}}}|([()\\+*.?'])|\\\1}}[\s]*(\{{!}}{{!}}\n)/s
+
   |includematch=/Input\s*=\s*([^\x2c{{!}}]*\x2c\s*)*{{#replace:{{{1|{{#replace:{{PAGENAME}}|'|'}}}}}|([()\\+*.?'])|\\\1}}\s*[\x2c{{!}}\n]/s
 
   |noresultsheader=  
 
   |noresultsheader=  
 
   |format  = ,\n* [[%PAGE%|%TITLE%]]\n,,
 
   |format  = ,\n* [[%PAGE%|%TITLE%]]\n,,
Ligne 20 : Ligne 20 :
 
   |uses=Template:Grid/Brewing Stand
 
   |uses=Template:Grid/Brewing Stand
 
   |includepage={Grid/Brewing Stand}
 
   |includepage={Grid/Brewing Stand}
   |includematch=/Input\s*=\s*{{#replace:{{{1|{{#replace:{{PAGENAME}}|'|'}}}}}|([()\\+*.?'])|\\\1}}[\s]*(\{{!}}{{!}}\n)/s
+
   |includematch=/Input\s*=\s*([^\x2c{{!}}]*\x2c\s*)*{{#replace:{{{1|{{#replace:{{PAGENAME}}|'|'}}}}}|([()\\+*.?'])|\\\1}}\s*[\x2c{{!}}\n]/s
 
   |noresultsheader=  
 
   |noresultsheader=  
 
   |format  = ,\n* [[%PAGE%|%TITLE%]]\n,,
 
   |format  = ,\n* [[%PAGE%|%TITLE%]]\n,,
Ligne 36 : Ligne 36 :
  
 
===Note===
 
===Note===
La recherche est large, par exemple, si vous mettez "Fer", tout ce qui contiendra "Fer" sera pris en compte, les blocs, les objets, les armures, les armes, les outils, bref tout ce qui est en fer.
+
Note pour qui voudra reprendre ce template :
 
+
<nowiki>\s*
Si vous voulez toutes les recettes contenant Argile (bloc) et Argile (objet), mettez juste "Argile" comme paramètre.
+
([^\x2c{{!}}]*\x2c\s*)*
 +
{{#replace:{{{1|{{#replace:{{PAGENAME}}|&#39;|'}}}}}|([()\\+*.?'])|\\\1}}
 +
\s*[\x2c{{!}}\n]/s</nowiki>
 +
Déjà, \x2c c'est une virgule<br />
 +
La première partie sert à faire qu'il puisse y avoir d'autres éléments dans le même paramètres, séparés par des virgules.<br />
 +
Le 2eme élément c'est pour remettre les appostrophes comme il faut, puis échapper certains caractères.<br />
 +
Et pour finir, on vérifie que c'est bien la fin d'un item (Laine Grise != Laine Grise Clair)
 
</noinclude>
 
</noinclude>

Version du 21 mars 2012 à 15:39


Ce template sert à lister tous les crafts (crafts, cuisson, alchimie) prenant dans leur recette un objet précis.
Par exemple, pour lister tous les crafts contenant un bloc d'argile :

 {{Crafts Utilisant|Lingot de Fer}}


donne :

     



Si vous laissez le paramètre vide, il sera automatiquement remplacé par le nom de la page.

Note

Note pour qui voudra reprendre ce template :

\s*
 ([^\x2c{{!}}]*\x2c\s*)*
 {{#replace:{{{1|{{#replace:{{PAGENAME}}|'|'}}}}}|([()\\+*.?'])|\\\1}}
 \s*[\x2c{{!}}\n]/s

Déjà, \x2c c'est une virgule
La première partie sert à faire qu'il puisse y avoir d'autres éléments dans le même paramètres, séparés par des virgules.
Le 2eme élément c'est pour remettre les appostrophes comme il faut, puis échapper certains caractères.
Et pour finir, on vérifie que c'est bien la fin d'un item (Laine Grise != Laine Grise Clair)