| 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.
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.
{{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.
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.
String-handling templates (help page) |
---|
Substring (select chunk of string by its position) |
---|
{{str sub new}} | Select a substring based on starting and ending index counted in either direction. | {{str left}} | Keep the first N characters of a string, or duplicate it to N characters. | {{str crop}} | Return all but the last N characters of a string. | {{str index}} | Return the N-th character of a string. |
| {{str right}} | Return substring starting at N-th character to end of string. | {{str rightc}} | Return the last N characters of a string; or a given value if empty. | {{str sub old}} | Return substring of given length starting at N-th character. |
|
|
|
Trimming (select/remove chunk of string by character type) |
---|
|
|
Select/remove specific item from string |
---|
| {{ship prefix}} | Returns the length of a ship's name prefix, if listed (ship names). | {{title year}} | Returns the 3-or-4-digit year from a pagename, if any. | {{title decade}} | Returns the 4-digit decade (e.g. "1740s") from a pagename, if any. | {{title number}} | Returns any number from a pagename. |
|
|
|
Insertion, replacement and length |
---|
{{loop}} | Repeat character string a specified number of times. | {{replace}} | Returns the string, after replacing all occurrences of a specified string with another string. | {{str rep}} | Returns the string, after replacing the first occurrence of a specified string with another string. | {{digits}} | Returns the string, after removing all characters that are not digits 0–9 | {{Nowiki}} | Displays wikitext as plain text. |
|
{{str len}} | Returns a string's length. | {{str ≥ len}} | Check if a string is "longer or equally long" or "shorter" than a given length. | {{str ≤ len}} | Check if a string is "shorter or equally long" or "longer" than a given length. | {{str ≠ len}} | Check if a string is "not equal" or "equal" to a given length. |
|
|
|
Analysis and searching |
---|
{{str startswith}} {{str endswith}} | Check if a string starts or ends with a given string. | {{str find}}, {{strfind short}} | Returns the numerical location of a given string in a string. | {{in string}} | Returns optional string when given string is not found | {{str count}} | Count the number of occurrences of a pattern within a string. |
|
{{a or an}} | Takes a noun and produces the appropriate indefinite article, based on whether the first letter is a vowel. | {{Array}} | Array manipulation and retrieval. | {{Font style}} | Returns bold or italic if the input value has either formatting. | {{Isnumeric}} | Returns number when true, blank when not numeric. | {{str letter}} | Returns the number of letters that begin a string. | {{str number}} | Returns the number of numbers that begin a string. |
|
|
|
Modules and built-in functions |
---|
|
|
|