الگو:Str ≥ len: تفاوت میان نسخهها
fa>Elli |
(بدون تفاوت)
|
نسخهٔ ۶ آوریل ۲۰۲۱، ساعت ۱۵:۰۸
پرونده:Ambox warning yellow.svg | This template is used on approximately ۶۴٬۰۰۰ pages and changes may be widely noticed. Test changes in the template's /sandbox or /testcases subpages, or in your own user subpage. Consider discussing changes on the talk page before implementing them. |
پرونده:Lua-Logo.svg | This template uses Lua: |
This is the {{str ≥ len}} meta-template.
It helps other templates check if a string is "longer or equally long" vs. "shorter" than a given length.
Usage
This template takes 3 to 4 unnamed parameters.
Here is how to check if the string "abcde" is 4 characters or more:
{{str ≥ len | abcde | 4 | Equal or longer. | Shorter. }}
Which returns this:
- Equal or longer.
Templates have a problem handling parameter data that contains equal signs "=
". But that is easily solved by using numbered parameters. Here we check if the string "ab=cde" is 100 characters or more:
{{str ≥ len | 1 = ab=cde | 2 = 100 | 3 = Equal "=" or longer. | 4 = Shorter, not "=". }}
Which returns this:
- Shorter, not "=".
It probably is a good habit to always use the numbered parameters, since you might not know beforehand exactly how the data will look that your template will feed to this meta-template.
Parameters
{{str ≥ len | 1 = A string | 2 = A length | 3 = Data to return/render when "longer than or equally long". | 4 = Data to return/render when "shorter than". }}
Empty or undefined strings are considered to be of 0 length.
Length values below 0 are considered to be 0.
Technical details
The potential alternative templates names {{str >= len}} or (for the opposite) {{str < len}} do not work in MediaWiki.
Templates have problems to handle parameter data that contains pipes "|
", unless the pipe is inside another template {{name|param1}}
or inside a piped link [[Help:Template|help]]
. Thus templates can not handle wikitables as input unless you escape them by using the {{!}} template. This makes it hard to use wikitables as parameters to templates. Instead the usual solution is to use "HTML wikimarkup" for the table code, which is more robust.