템플릿:루프용
Template:| 이 템플릿은 전체 페이지의 약 1%인 약 69만3000페이지에 사용된다. 큰 중단과 서버 로드를 방지하려면 템플릿의 /샌드박스 또는 /테스트케이스 하위 페이지 또는 사용자 하위 페이지에서 변경 사항을 테스트해야 한다.테스트한 변경사항은 한 번의 편집으로 이 페이지에 추가될 수 있다.변경 사항을 구현하기 전에 토크 페이지에서 논의해 보십시오. |
| 이 템플릿은 Lua: |
이 템플릿은 a for 루프 또는 foreach 루프를 구현한다.
이 템플릿은 사용자 지정 템플릿("템플릿"이라 함)을 여러 번 호출한다. 각 값에 대해 1회 반복 시퀀스 또는 2) 명시적 리스트를 호출한다.시퀀스 또는 목록의 각 값은 호출된 템플릿("변수 매개 변수")의 지정된 동일한 파라미터로 전달된다.선택적으로, 사전 및 사후 픽스를 전달된 값에 부착할 수 있다.
지정된 변수 파라미터 외에 호출된 템플릿의 다른 파라미터("정적 파라미터")는 각 반복에서 동일한 값을 부여할 수 있다.
사용법
| 그룹 | 매개변수 | 의미 | 기본값 |
|---|---|---|---|
| 의무적인 | 1 (1998년 | 호출 간 출력 구분자(빈칸일 수 있음, 공백이 보존됨 | |
| 부르다 | 호출할 템플릿 | ||
| pv | 호출된 템플릿의 변수 매개 변수의 이름(또는 번호) | 1 | |
| 옵션 1: 반복 순서 | 출발하다 | 변수 매개 변수에 전달할 첫 번째 숫자 값 | 1 |
| 멈추다 | 변수 파라미터의 최대 숫자 값 | ||
| 에 의해 | 변수 매개 변수에 전달된 값 사이의 반복 단계 크기 | 1 | |
| 옵션 2: 노골적인 가치관 | (변수 매개변수) | 별도의 매개변수로 주어진 명시적 값(공백 제거) | |
| 스킵블랭크 | 빈 매개 변수 값을 건너뛰려면 "true"로 설정하십시오. | 거짓의 | |
| 기타 선택 사항 매개변수 | pc[n]n | 호출된 템플릿의 N번째 정적 매개변수 이름(또는 번호) | |
| pc[n]v | 호출된 템플릿의 N번째 정적 매개 변수에 대한 값 | ||
| 접두사를 붙이다 | 변수 매개 변수에 전달된 각 값에 앞에 붙은 정적 접두사 | ||
| 사후 처리 | 변수 매개 변수에 전달된 각 값에 추가된 정적 사후 처리 | ||
| 부차적인 | {{for loop}}}을(를) 교체할 때 호출된 템플릿을 대체하지 않도록 "false"로 설정 | 진실의 |
옵션 1(이행 파라미터) 또는 옵션 2(가치의 명시적 목록) 중 하나를 사용할 수 있지만 둘 다 사용할 수는 없다.
어떤 명시적 값보다 먼저 이름 없는 첫 번째 매개변수는 구분 기호가 된다.구분 기호는 에서 명명된 템플릿에 대한 호출 간에 출력되는 문자열이다. call=마지막 통화 후 출력되지 않는다.
주의
- 분리기는 "1="로 접두사를 붙일 수 있지만, 이 경우 시작과 끝의 새 선과 공백을 포함할 수 없다.
- 매개 변수 값에 등호 부호가 포함된 경우
{{=}}(Template Usage 힌트 및 해결 방법 참조). - 번호가 매겨진 파라미터를 사용하는 경우 첫 번째 값은 파라미터 2(예:
2=Your1stValue() 매개변수 1이 구분자이기 때문이다. - 번호가 매겨진 매개 변수를 사용할 경우 어떤 숫자도 건너뛰지 마십시오.루프는 번호가 없는 첫 번째 파라미터 이후에 종료된다. (파라미터는 공백일 수 있지만, 없을 수는 없다.)
대체
현재 루아 기반 템플릿은 치환을 지원한다.만약 substall=no지정되지 않은 경우, 템플릿 대체는 전달된 템플릿에 대한 호출을 포함하여 모든 것을 대체한다. call=. 지정되면 템플릿은 지정된 템플릿에 대한 호출의 순서로 대체된다.
예:{{subst:for loop sep 01 02 03 04 05 06 07 call=1x}}->01sep 02sep 03sep 04sep 05sep 06sep 07,{{subst:for loop sep 01 02 03 04 05 06 07 substall=no}}->{{1x 01}}sep {{1x 02}}sep {{1x 03}}sep {{1x 04}}sep {{1x 05}}sep {{1x 06}}sep {{1x 07}}
전체 대체의 경우 특수:ExpandTemplate도 사용할 수 있다.
예
| 형태 | 코드 | 설명 | 결과 |
|---|---|---|---|
| 반복기 | {{for loop & call = spanbox pv = 글꼴 크기 start=10 stop=52 by=8 postfix = px pc1n = 1 pc1v = A pc2n = 백그라운드 pc2v = 노란색}}}}}}} | 다음 값을 사용하여 템플릿을 "spanbox"로 호출하십시오.
"&"로 출력 분리 | A &A &A &A &A &A |
| 명시적 가치 | {{for loop , call=1x prefix=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 }} | 1[NN] 값을 가진 템플릿 "1x"를 호출하십시오. 여기서 NN = "00" ~ "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, 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 |
명시적 값이 있는 기타 예제
{{for loop - a 3 c g call=3x}}템플릿 사용:3x(백링크 편집) 제공
aaa-333-cc-gggg
{{for loop
a 3 c g call=3x}}주다
아
333
ccc
게걸스럽게 먹다
{class="wikable sortable" - !Test - {{for loop {{!}}-{!} a b c d e call=3x}}} 다음을 제공한다.
| 테스트 |
|---|
| 아 |
| bbb |
| ccc |
| Ddd. |
| 이이 |
{{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 108109 110 111 112 113 111 111 111 119 121 121 121 123 1212 1212 1212 1212 121 131 133 133 133 139 139 139 141 143 144 149 149 153 153 154 call=1x}}. 다음을 제공한다.
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
시작->{{for 루프 {{=}{01 03 04 06 06 07 08 09 09 10 11==}{{=}}}} 12 13 15 17 18 19 call=1x}}<-end> 다음을 제공한다.
시작->01= 02= 04= 06= 07= 09= 10= 11== 12= 14= 15= 16= 17= 19<-엔드
레거시 코드에 대한 참고 사항
이 템플릿은 현재 세 번째 화신이다.이제 모듈에서 Lua 코드를 사용한다.루프를 위해서.그것은 ParserFunctions에서 Lua로 항만되었다.구분자 값을 지정하기 위해 sep라는 이름의 매개 변수를 가진 이전 버전도 있었다.템플릿은 원래 템플릿 기반:메타에 대해서.템플릿 이름이 변경된 이유는 템플릿:위키백과에 대해서.
이전 버전은 150개의 변수 값과 4개의 고정 매개변수로 제한되었다.현재 버전에는 그러한 제한이 없다.또한 첫 번째 버전에서 "sep" 매개변수는 구분자 값에 공백을 허용하지 않았다.이것은 두 번째 버전으로 수정되었고 현재 버전으로 유지되었다.