틀:Str ≥ len
조무위키
{{#ifeq: Str ≥ len | 연습장
|
{{틀 연습장 안내}
}}{{틀 기타
|
{{str ≥ len}} 틀은 메타 틀(틀을 위한 틀)입니다.
이 틀은 문자열이 주어진 길이보다 '길거나 같은지' 또는 '짧은지'를 판단합니다.
사용법[편집]
이 틀을 쓸 때에는 3개 또는 4개의 이름 없는 매개변수를 씁니다. 사용할 수 있는 모든 매개변수는 다음과 같으며, 3번째나 4번째 매개변수는 생략 가능합니다. 상황에 따라 오류가 발생할 수 있으므로 사용 예를 참고하세요.
{{str ≥ len | 문자열 | 길이 | 길거나 같을 때의 출력 | 짧을 때의 출력 }}
|
코드 길이를 최적화하고 오류 발생 가능성을 줄이려면 다음과 같이 씁니다.
{{str ≥ len|1=|2=|3=|4=}}
|
- 문자열이 비어 있거나 지정되지 않으면 길이가 0인 것으로 간주됩니다. 문자열 길이는 500자까지로 한정됩니다.
- 0 미만의 길이는 0으로 간주됩니다. 500 초과의 길이는 500으로 간주됩니다.
- 500자 또는 그 이상의 문자열은 어떠한 길이가 주어지든 간에 항상 '길거나 같음'으로 처리됩니다.
사용 예[편집]
간단한 예를 통해 이 틀의 동작을 확인할 수 있습니다.
입력 | 결과 |
---|---|
{{str ≥ len | abcde | 5 | 길거나 같음 | 짧음 }} |
길거나 같음
|
{{str ≥ len | abcde | 6 | 길거나 같음 | 짧음 }} |
짧음
|
한글처럼, 유니코드에는 지정되어 있으나 아스키 코드에 미포함된 문자를 문자열로 지정하면 한 문자의 바이트에 상관 없이 문자 수를 셉니다. 과거에 문제가 있던 기능으로, 현재 디시위키에서는 올바르게 동작합니다. 버그질라:16852 참고.
입력 | 결과 |
---|---|
{{str ≥ len | 소년이여 야망을 가져라 | 12 | 길거나 같음 | 짧음 }} |
길거나 같음
|
{{str ≥ len | 소년이여 야망을 가져라 | 13 | 길거나 같음 | 짧음 }} |
짧음
|
{{str ≥ len | àçé | 3 | 길거나 같음 | 짧음 }} |
길거나 같음
|
{{str ≥ len | àçé | 4 | 길거나 같음 | 짧음 }} |
짧음
|
만약 매개변수 이름 없이 문자열에 등호(=)를 포함시키면 틀 사용시 이름 있는 매개변수로 취급되기 때문에 오류가 생깁니다. 이를 방지하기 위해서는 이름 있는 매개변수를 사용하면 됩니다. 매개변수 이름으로는 1, 2, 3, 4를 쓰면 됩니다. 다음 예는 문자열 "ab=cde"가 5자 이상인지 미만인지를 판단합니다.
입력 | 결과 |
---|---|
{{str ≥ len | 1= ab=cde | 2= 5 | 3= 길거나 같음(정상) | 4= 짧음(오류) }} |
길거나 같음(정상)
|
{{str ≥ len | ab=cde | 5 | 길거나 같음(정상) | 짧음(오류) }} |
짧음(오류)
|
다른 틀에 사용할 경우, 위와 같은 오류를 막기 위해 매개변수 이름을 지정하는 것을 권장합니다.
기술적인 내용[편집]
- 컴퓨터 자판으로 치기 쉬운 이 틀의 이름은 {{str >= len}}이지만 기술적 한계 때문에 현재의 이름을 쓰고 있습니다.
- 이 틀의 실행은 서버 부하를 비교적 적게 먹는 편입니다. 다른 문자열 처리 틀은 서버 부하 때문에 사용이 권장되지 않는 경우가 있는데, 그런 경우 이 틀로 대체가 가능하면 이 틀을 쓰세요.
- 틀 사용시 파이프 문자(|)는 매개변수 구분자로 사용되기 때문에 매개변수 자체에 파이프 문자가 들어갈 경우 특수하게 처리해야 합니다. 디시위키:틀#매개변수를 참고하세요.
- 이 틀은 내부적으로 문자열 앞에 x(엑스)를 붙여서 처리합니다. 이는
{{#ifeq:}}
기능이 0과 00 따위의 문자열을 수로 인식해 같은 것으로 처리하는 것을 막기 위해서입니다.
{{설명문서/끝상자2 | 미리싣기 = {틀:미리싣기 | 내용 = {틀:내용 | 연결상자 = {틀:연결상자
| 설명공간 = {{설명문서/설명공간}
| 1 =
| 틀문서 = {{설명문서/틀문서}
}}