Шаблон:Str len/doc: различия между версиями

Материал из Буквицы
Перейти к навигации Перейти к поиску
(Новая страница: «{{documentation subpage}} {{used in system}} {{lua|Module:String}} <!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE --> This is the {{tl|str …»)
 
Нет описания правки
 
Строка 1: Строка 1:
{{documentation subpage}}
<noinclude>{{docpage}}</noinclude><includeonly>{{СИШ}}</includeonly>
{{used in system}}
{{OnLua|String|len}}
{{lua|Module:String}}
<!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE -->


This is the {{tl|str len}} meta-template.
Шаблон выдаёт длину строки, которая стоит в его первом параметре. Начальные и конечные (но не промежуточные) пробелы отбрасываются.


It takes a string as parameter and returns its length (excluding spaces at the start and end). It can now count as high as necessary.
== Примеры ==
Пустой или неопределённый параметр:
:<code><nowiki>{{str len}}</nowiki></code> возвращает {{str len}}
:<code><nowiki>{{str len|}}</nowiki></code> возвращает {{str len|}}
:<code><nowiki>{{str len| }}</nowiki></code> возвращает {{str len| }}


=== Examples ===
Обычные строки (в том числе со специальными символами):


If the parameter is empty or undefined it is considered to be of zero length:  
:<code><nowiki>{{str len|ab cde}}</nowiki></code> возвращает {{str len|ab cde}}
:<code><nowiki>{{str len| 1234567  }}</nowiki></code> возвращает {{str len| 1234567  }}
:<code><nowiki>{{str len| привет }}</nowiki></code> возвращает {{str len| привет }}
:<code><nowiki>{{str len| §101. Ĉź }}</nowiki></code> возвращает {{str len| §101. Ĉź }}


:<code><nowiki>{{str len}}</nowiki></code> returns {{str len}}
Некоторые особые случаи (см. [[Википедия:Механизм шаблонов]]<!-- или ещё где-нибудь -->):
:<code><nowiki>{{str len|}}</nowiki></code> returns {{str len|}}
:<code><nowiki>{{str len| ♀ + ♂ = ♥ }}</nowiki></code> возвращает {{str len| ♀ + ♂ = ♥ }}&nbsp;&nbsp; ''(♀ + ♂ воспринимается как имя параметра)'',&nbsp; но зато
:<code><nowiki>{{str len| }}</nowiki></code> returns {{str len| }}
:<code><nowiki>{{str len| 1= ♀ + ♂ = ♥ }}</nowiki></code> возвращает {{str len| 1= ♀ + ♂ = ♥ }}&nbsp;&nbsp; ''(1 — имя параметра)''
:<code><nowiki>{{str len| {{tl|123}} }}</nowiki></code> возвращает {{str len| {{tl|123}} }}&nbsp;&nbsp; ''(шаблон подставляется)''
:<code><nowiki>{{str len| &amp;#126; }}</nowiki></code> возвращает {{str len| &#126; }}&nbsp;&nbsp; ''([[Мнемоники в HTML|HTML-мнемоники]] не подставляются)''


It counts the length correctly, even if the string contains spaces, looks like a number, or contains special characters:
Шаблон верно работает для строк до 500 символов длиной, а для более длинных выдаётся значение 500:


:<code><nowiki>{{str len| ab cde }}</nowiki></code> returns {{str len| ab cde }}
:<code><nowiki>{{str len| <499 символов> }}</nowiki></code> возвращает {{str len| abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi }}
:<code><nowiki>{{str len| <1000 символов> }}</nowiki></code> возвращает {{str len| abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghij }}


:<code><nowiki>{{str len| 1234567 }}</nowiki></code> returns {{str len| 1234567 }}
== См. также ==
 
Данный шаблон является значительно более ресурсоёмким для серверов Википедии, чем следующие шаблоны, поэтому по возможности старайтесь использовать эти оптимизированные варианты:
:<code><nowiki>{{str len| café åäö }}</nowiki></code> returns {{str len| café åäö }}
* {{tl|Str ≠ len}} — проверка длины строки на ''равенство'' или ''неравенство'' заданному числу символов;
 
* {{tl|Str ≥ len}} — проверка, является ли длина строки ''больше либо равной'' или ''меньше'' заданного числа символов.
:<code><nowiki>{{str len| 499-characters... }}</nowiki></code> returns {{str len| abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi }}
<includeonly>[[Категория:Шаблоны:Работа со строками]]</includeonly>
:<code><nowiki>{{str len| 1000-characters... }}</nowiki></code> returns {{str len| abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghi abcdefghij }}
 
=== Template data ===
{{TemplateDataHeader}}
<templatedata>
{
        "description": "The template takes a string as parameter and returns its length, excluding spaces at the start and end of the string",
        "params": {
                "1": {
                        "label": "Alpha-numeric text",
                        "description": "The string to be counted",
                        "type": "string",
                        "required": true
                }
        }
}
</templatedata>
 
=== Technical details ===
 
This is the first general-purpose template to be implemented using [[mw:Extension:Scribunto]]. The Lua code is located in [[Module:String]].
 
=== See also ===
 
{{navbox string handling templates}}
 
<includeonly>
<!-- CATEGORIES AND INTERWIKIS HERE, THANKS -->
[[Category:String manipulation templates|{{PAGENAME}}]]
 
</includeonly>

Текущая версия от 07:50, 13 сентября 2013


Шаблон выдаёт длину строки, которая стоит в его первом параметре. Начальные и конечные (но не промежуточные) пробелы отбрасываются.

Примеры

Пустой или неопределённый параметр:

{{str len}} возвращает 0
{{str len|}} возвращает 0
{{str len| }} возвращает 0

Обычные строки (в том числе со специальными символами):

{{str len|ab cde}} возвращает 6
{{str len| 1234567 }} возвращает 7
{{str len| привет }} возвращает 6
{{str len| §101. Ĉź }} возвращает 8

Некоторые особые случаи (см. Википедия:Механизм шаблонов):

{{str len| ♀ + ♂ = ♥ }} возвращает 0   (♀ + ♂ воспринимается как имя параметра),  но зато
{{str len| 1= ♀ + ♂ = ♥ }} возвращает 9   (1 — имя параметра)
{{str len| {{tl|123}} }} возвращает 343   (шаблон подставляется)
{{str len| &#126; }} возвращает 6   (HTML-мнемоники не подставляются)

Шаблон верно работает для строк до 500 символов длиной, а для более длинных выдаётся значение 500:

{{str len| <499 символов> }} возвращает 499
{{str len| <1000 символов> }} возвращает 1000

См. также

Данный шаблон является значительно более ресурсоёмким для серверов Википедии, чем следующие шаблоны, поэтому по возможности старайтесь использовать эти оптимизированные варианты:

  • {{Str ≠ len}} — проверка длины строки на равенство или неравенство заданному числу символов;
  • {{Str ≥ len}} — проверка, является ли длина строки больше либо равной или меньше заданного числа символов.