Modèle:For loop
Modèle:For loop sert à créer une foreach loop (en). Voyez les exemples pour en comprendre le fonctionnement.
Usage
modifier{{for loop|<!-- séparateur, les espaces sont conservées --> | call = modèle appelé | pc1n = nom du 1er paramètre invariable | pc1v = valeur du 1re paramètre invariable | pc2n = nom du 2e paramètre invariable | pc2v = valeur du 2e paramètre invariable | pc3n = nom du 3e paramètre invariable | pc3v = valeur du 3e paramètre invariable <!-- On peut ajouter des paramètres invariables --> | pv = nom du paramètre à donner au modèle auquel est assigné la valeur de la variable | prefix = préfixe ajouté à chaque valeur | postfix = suffixe ajouté à chaque valeur | liste de valeurs séparées par « | » (les espaces sont filtrées) (une valeur vide n'est pas ignorée) }}
Le séparateur est le premier paramètre anonyme, qui sert à commencer et terminer avec des espaces et des retours de ligne. Le séparateur est copié entre les appels au modèle appelé (|call=
). Il n'est pas copié après la dernière itération. Le paramètre séparateur est prioritaire sur la liste des valeurs. Si une valeur de la liste comprend « = », utiliser {{=}}. Pour la barre verticale, utiliser {{!}}.
Exemples
modifierCode | Résultat |
---|---|
1{{for loop|, 1|00|01|02|03|04|05|06|07|08|09 |10|11|12|13|14|15|16|17|18|19 |20|21|22|23|24|25|26|27|28|29 |30|31|32|33|34|35|36|37|38|39 |40|41|42|43|44|45|46|47|48|49 |50|51|52|53|54|55|56|57|58|59 |60|61|62|63|64|65|66|67|68|69 |70|71|72|73|74|75|76|77|78|79 |80|81|82|83|84|85|86|87|88|89 |90|91|92|93|94|95|96|97|98|99 |call=1x }} |
100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199 |
Observer que la dernière partie du séparateur sert de préfixe ; ce premier préfixe doit être distinct.
{{for loop|-|a|3||c|g|call=3x}} qui appelle le modèle {{3x}} donne
aaa-333--ccc-ggg
{{for loop|
|a|3||c|g|call=3x}} donne
aaa
333
ccc
ggg
{|class="wikitable sortable" |- !Test |- | {{for loop| {{!}}- {{!}} |a|b|c|d|e|call=3x}} |}
donne
Test |
---|
aaa |
bbb |
ccc |
ddd |
eee |
{{for loop| |01|02|03|04|05|06|07|08|09|10|11|12|13|14|15|16|17|18|19 |20|21|22|23|24|25|26|27|28|29|30|31|32|33|34|35|36|37|38|39 |40|41|42|43|44|45|46|47|48|49|50|51|52|53|54|55|56|57|58|59 |60|61|62|63|64|65|66|67|68|69|70|71|72|73|74|75|76|77|78|79 |80|81|82|83|84|85|86|87|88|89|90|91|92|93|94|95|96|97|98|99 |100|101|102|103|104|105|106|107|108|109|110|111|112|113|114|115|116|117|118|119 |120|121|122|123|124|125|126|127|128|129|130|131|132|133|134|135|136|137|138|139 |140|141|142|143|144|145|146|147|148|149|150|151|152|153|154|call=1x}}
donne
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154
début->{{for loop|{{=}} |01|02|03|04|05|06|07|08|09|10 |11{{=}}{{=}}{{=}}|12|13|14|15|16|17|18|19|call=1x}}<-fin
donne
début->01= 02= 03= 04= 05= 06= 07= 08= 09= 10= 11==== 12= 13= 14= 15= 16= 17= 18= 19<-fin
Code hérité
modifierCe modèle, adapté de la Wikipédia en anglais, recourt à Lua. Il a été adapté des ParserFunctions.
Les versions antérieures étaient restreintes à 150 valeurs et quatre paramètres fixés. Ces limites n'existent plus. De plus, les versions antérieures ignoraient les espaces, ce n'est plus le cas.
Substitution
modifierLe modèle actuel peut appliquer une substitution (consulter en:substitution pour plus d'informations, ainsi que la page équivalente de ce modèle dans la Wikipédia en anglais). Pour une substitution complète, on peut utiliser Special:ExpandTemplates.
Voir aussi
modifier- Des modèles et des informations en anglais
- mw:Template:Fe
- m:Template:foreach (backlinks edit)
- m:Template:tblb (backlinks edit)
- w:template:for nowiki ( discussion modifier historique liens )
- w:template:item ( discussion modifier historique liens )
- w:template:loop ( discussion modifier historique liens )
- w:template:repeat ( discussion modifier historique liens )
- w:template:simple recursion ( discussion modifier historique liens )
- mw:Extension:LoopFunctions
La documentation de ce modèle est générée par le modèle {{Documentation}}.
Elle est incluse depuis sa sous-page de documentation. Veuillez placer les catégories sur cette page-là.
Les éditeurs peuvent travailler dans le bac à sable (créer) et la page de test (créer).
Voir les statistiques d'utilisation du modèle sur l'outil wstat.