テンプレート:Foreach
表示
このテンプレートForeachは与えられた値を順番にループ処理する機能を提供します。最大3階層のループ処理ができます。
Luaモジュールを使用しています: |
使い方
[編集]引数
[編集]引数名 | 既定値 | 説明 |
---|---|---|
key | 第1階層ループの変数名(必須) | |
values | 第1階層ループに渡す値をFIRST;LAST;STEPで構成される数列または文字列をカンマ区切りで一つ以上指定します。FIRSTは必須でLASTとSTEPは省略可能です。STEPのみが省略された場合はSTEPはFIRSTとLASTの大小に応じて1または-1となります。(必須) | |
header | 第1階層ループ開始時のヘッダー処理 | |
footer | 第1階層ループ終了時のフッター処理 | |
content | 処理するWikitext文字列です。引数key, key2, key3の変数名を実際の値に置き換えます。{、|、}、[、]などがWikitextとして事前処理されないようにするには「w:数値文字参照」を用いるか、該当文字の全角文字で入力してください。(必須) | |
preprocess | 1 | ウィキサーバーのテキスト展開処理を行う場合は1、行わない場合は0を指定します。 |
trim | 1 | 変数key,key2,key3に渡される値を事前に空白トリミングする場合は1、しない場合は0を指定します。 |
key2 | 第2階層ループの変数名 | |
values2 | 第2階層ループに渡す値を数列または文字列をカンマ区切りで一つ以上指定します。書式はvaluesと同じです。 | |
header2 | 第2階層ループ開始時のヘッダー処理 | |
footer2 | 第2階層ループ終了時のフッター処理 | |
key3 | 第3階層ループの変数名 | |
values3 | 第3階層ループに渡す値を数列または文字列をカンマ区切りで一つ以上指定します。書式はvaluesと同じです。 | |
header3 | 第3階層ループ開始時のヘッダー処理 | |
footer3 | 第3階層ループ終了時のフッター処理 | |
comma | , | カンマを変数の値に使いたい時に別の文字を区切りに指定します |
semicolon | ; | セミコロンを変数の値に使いたい時に別の文字を区切りに指定します |
hexdump | hexdump=1の時にhexdump形式で出力します。 |
使用例1
[編集]「カテゴリ:コメントアイコンテンプレート」のテンプレートを順次表示します。
{{Foreach|key=🍎|values=AFD,CI,コ,コメント,作業中,保留,反対,反対r,取り下げ,報告,強く反対r,強く賛成r,情報,提案,条件付反対,条件付賛成,棄権,理由,終了,自動失効,賛成,賛成r|content=*{{🍎}}"'''{{Color|green|🍎}}'''"の実行結果{{nop}}}}
- "AFD"の実行結果
- "CI"の実行結果
- "コ"の実行結果
- コメント"コメント"の実行結果
- 作業中"作業中"の実行結果
- 保留"保留"の実行結果
- 反対 "反対"の実行結果
反対"反対r"の実行結果- 取り下げ"取り下げ"の実行結果
- 報告"報告"の実行結果
-
強く反対"強く反対r"の実行結果 強く賛成"強く賛成r"の実行結果- 情報"情報"の実行結果
- 提案 "提案"の実行結果
- 条件付反対"条件付反対"の実行結果
- 条件付賛成"条件付賛成"の実行結果
- 棄権"棄権"の実行結果
- 理由"理由"の実行結果
- 終了"終了"の実行結果
- 自動失効"自動失効"の実行結果
- 賛成 "賛成"の実行結果
賛成"賛成r"の実行結果
使用例2
[編集]2と0.5と1から15まで3ずつ増えていく値のサイズで順番に文字を表示します。
{{Foreach|key=🍈|values=2,0.5,1;15;3|content=サイズは🍈em{{resize|🍈em;|🚴🍈🏇}}<br/>}}
サイズは2em🚴2🏇
サイズは0.5em🚴0.5🏇
サイズは1em🚴1🏇
サイズは4em🚴4🏇
サイズは7em🚴7🏇
サイズは10em🚴10🏇
サイズは13em🚴13🏇
使用例3
[編集]上述の使用例2と同じ内容をhexdump出力します
{{Foreach|key=🍈|values=2,0.5,1;15;3|content=サイズは🍈em{{resize|🍈em;|🚴🍈🏇}}<br/>|hexdump=1}}
00000000🧐 30B5 30A4 30BA 306F 0032 0065 006D 003C 0073 0070 0061 006E 0020 0073 0074 0079 🧐サイズは2em<span sty🧐 00000010🧐 006C 0065 003D 0022 0066 006F 006E 0074 002D 0073 0069 007A 0065 003A 0032 0065 🧐le="font-size:2e🧐 00000020🧐 006D 003B 003B 0022 003E 1F6B4 0032 1F3C7 003C 002F 0073 0070 0061 006E 003E 003C 🧐m;;">🚴2🏇</span><🧐 00000030🧐 0062 0072 002F 003E 30B5 30A4 30BA 306F 0030 002E 0035 0065 006D 003C 0073 0070 🧐br/>サイズは0.5em<sp🧐 00000040🧐 0061 006E 0020 0073 0074 0079 006C 0065 003D 0022 0066 006F 006E 0074 002D 0073 🧐an style="font-s🧐 00000050🧐 0069 007A 0065 003A 0030 002E 0035 0065 006D 003B 003B 0022 003E 1F6B4 0030 002E 🧐ize:0.5em;;">🚴0.🧐 00000060🧐 0035 1F3C7 003C 002F 0073 0070 0061 006E 003E 003C 0062 0072 002F 003E 30B5 30A4 🧐5🏇</span><br/>サイ🧐 00000070🧐 30BA 306F 0031 0065 006D 003C 0073 0070 0061 006E 0020 0073 0074 0079 006C 0065 🧐ズは1em<span style🧐 00000080🧐 003D 0022 0066 006F 006E 0074 002D 0073 0069 007A 0065 003A 0031 0065 006D 003B 🧐="font-size:1em;🧐 00000090🧐 003B 0022 003E 1F6B4 0031 1F3C7 003C 002F 0073 0070 0061 006E 003E 003C 0062 0072 🧐;">🚴1🏇</span><br🧐 000000A0🧐 002F 003E 30B5 30A4 30BA 306F 0034 0065 006D 003C 0073 0070 0061 006E 0020 0073 🧐/>サイズは4em<span s🧐 000000B0🧐 0074 0079 006C 0065 003D 0022 0066 006F 006E 0074 002D 0073 0069 007A 0065 003A 🧐tyle="font-size:🧐 000000C0🧐 0034 0065 006D 003B 003B 0022 003E 1F6B4 0034 1F3C7 003C 002F 0073 0070 0061 006E 🧐4em;;">🚴4🏇</span🧐 000000D0🧐 003E 003C 0062 0072 002F 003E 30B5 30A4 30BA 306F 0037 0065 006D 003C 0073 0070 🧐><br/>サイズは7em<sp🧐 000000E0🧐 0061 006E 0020 0073 0074 0079 006C 0065 003D 0022 0066 006F 006E 0074 002D 0073 🧐an style="font-s🧐 000000F0🧐 0069 007A 0065 003A 0037 0065 006D 003B 003B 0022 003E 1F6B4 0037 1F3C7 003C 002F 🧐ize:7em;;">🚴7🏇</🧐 00000100🧐 0073 0070 0061 006E 003E 003C 0062 0072 002F 003E 30B5 30A4 30BA 306F 0031 0030 🧐span><br/>サイズは10🧐 00000110🧐 0065 006D 003C 0073 0070 0061 006E 0020 0073 0074 0079 006C 0065 003D 0022 0066 🧐em<span style="f🧐 00000120🧐 006F 006E 0074 002D 0073 0069 007A 0065 003A 0031 0030 0065 006D 003B 003B 0022 🧐ont-size:10em;;"🧐 00000130🧐 003E 1F6B4 0031 0030 1F3C7 003C 002F 0073 0070 0061 006E 003E 003C 0062 0072 002F 🧐>🚴10🏇</span><br/🧐 00000140🧐 003E 30B5 30A4 30BA 306F 0031 0033 0065 006D 003C 0073 0070 0061 006E 0020 0073 🧐>サイズは13em<span s🧐 00000150🧐 0074 0079 006C 0065 003D 0022 0066 006F 006E 0074 002D 0073 0069 007A 0065 003A 🧐tyle="font-size:🧐 00000160🧐 0031 0033 0065 006D 003B 003B 0022 003E 1F6B4 0031 0033 1F3C7 003C 002F 0073 0070 🧐13em;;">🚴13🏇</sp🧐 00000170🧐 0061 006E 003E 003C 0062 0072 002F 003E 🧐an><br/>🧐
使用例4
[編集]3階層のループ処理を行います。
{{Foreach|semicolon=🍇|key=🍎|values=甲,乙,丙|key2=🍋|values2=あ,い,{{resize|200%|う}},え,お|header2={{nop}}第2階層ヘッダー(🍎:🍋:🍈){{left/s|2em}}|footer2={{left/e}}{{nop}}第2階層フッター(🍎:🍋:🍈){{nop}}|key3=🍈|values3=10🍇6|header3={{nop}}第3階層ヘッダー(🍎:🍋:🍈){{left/s|2em}}{{nop}}|footer3={{left/e}}{{nop}}第3階層フッター(🍎:🍋:🍈){{nop}}|content=🍉,🍎,🍋,🍈/}}
第2階層ヘッダー(甲:🍋:🍈)
第3階層ヘッダー(甲:あ:🍈)
🍉,甲,あ,10/🍉,甲,あ,9/🍉,甲,あ,8/🍉,甲,あ,7/🍉,甲,あ,6/
第3階層フッター(甲:あ:🍈)
第3階層ヘッダー(甲:い:🍈)🍉,甲,い,10/🍉,甲,い,9/🍉,甲,い,8/🍉,甲,い,7/🍉,甲,い,6/
第3階層フッター(甲:い:🍈)
第3階層ヘッダー(甲:う:🍈)🍉,甲,う,10/🍉,甲,う,9/🍉,甲,う,8/🍉,甲,う,7/🍉,甲,う,6/
第3階層フッター(甲:う:🍈)
第3階層ヘッダー(甲:え:🍈)🍉,甲,え,10/🍉,甲,え,9/🍉,甲,え,8/🍉,甲,え,7/🍉,甲,え,6/
第3階層フッター(甲:え:🍈)
第3階層ヘッダー(甲:お:🍈)🍉,甲,お,10/🍉,甲,お,9/🍉,甲,お,8/🍉,甲,お,7/🍉,甲,お,6/
第3階層フッター(甲:お:🍈)第2階層フッター(甲:🍋:🍈)
第2階層ヘッダー(乙:🍋:🍈)
第3階層ヘッダー(乙:あ:🍈)
🍉,乙,あ,10/🍉,乙,あ,9/🍉,乙,あ,8/🍉,乙,あ,7/🍉,乙,あ,6/
第3階層フッター(乙:あ:🍈)
第3階層ヘッダー(乙:い:🍈)🍉,乙,い,10/🍉,乙,い,9/🍉,乙,い,8/🍉,乙,い,7/🍉,乙,い,6/
第3階層フッター(乙:い:🍈)
第3階層ヘッダー(乙:う:🍈)🍉,乙,う,10/🍉,乙,う,9/🍉,乙,う,8/🍉,乙,う,7/🍉,乙,う,6/
第3階層フッター(乙:う:🍈)
第3階層ヘッダー(乙:え:🍈)🍉,乙,え,10/🍉,乙,え,9/🍉,乙,え,8/🍉,乙,え,7/🍉,乙,え,6/
第3階層フッター(乙:え:🍈)
第3階層ヘッダー(乙:お:🍈)🍉,乙,お,10/🍉,乙,お,9/🍉,乙,お,8/🍉,乙,お,7/🍉,乙,お,6/
第3階層フッター(乙:お:🍈)第2階層フッター(乙:🍋:🍈)
第2階層ヘッダー(丙:🍋:🍈)
第3階層ヘッダー(丙:あ:🍈)
🍉,丙,あ,10/🍉,丙,あ,9/🍉,丙,あ,8/🍉,丙,あ,7/🍉,丙,あ,6/
第3階層フッター(丙:あ:🍈)
第3階層ヘッダー(丙:い:🍈)🍉,丙,い,10/🍉,丙,い,9/🍉,丙,い,8/🍉,丙,い,7/🍉,丙,い,6/
第3階層フッター(丙:い:🍈)
第3階層ヘッダー(丙:う:🍈)🍉,丙,う,10/🍉,丙,う,9/🍉,丙,う,8/🍉,丙,う,7/🍉,丙,う,6/
第3階層フッター(丙:う:🍈)
第3階層ヘッダー(丙:え:🍈)🍉,丙,え,10/🍉,丙,え,9/🍉,丙,え,8/🍉,丙,え,7/🍉,丙,え,6/
第3階層フッター(丙:え:🍈)
第3階層ヘッダー(丙:お:🍈)🍉,丙,お,10/🍉,丙,お,9/🍉,丙,お,8/🍉,丙,お,7/🍉,丙,お,6/
第3階層フッター(丙:お:🍈)第2階層フッター(丙:🍋:🍈)