This template uses Lua :
Characters in the source string are counted: the first is index 1
, the last one is index length of string
. The substring requested can be defined by these two indexes. Also, the substring can be defined by one index, and the substring length. The options are:
{{str mid|<string>|<index of first character>|<length of substring>|<index of last character>}}
It returns a part of the <string>, starting with character on position index , length <sublength>, last character returned is end index.
{{str mid|Abcdefghijklmnopqrstuvwxyz|5|3}} → efg
If parameter 2 is omitted, start is from character 1:
{{str mid|Abcdefghijklmnopqrstuvwxyz||5}} → Abcde
If parameter 3 is omitted, the whole rest of the string is returned:
{{str mid|Abcdefghijklmnopqrstuvwxyz|15}} → opqrstuvwxyz
By entering a negative value , the index is counted from the end :
{{str mid|Abcdefghijklmnopqrstuvwxyz|-7|4}} → tuvw
{{str mid|Abcdefghijklmnopqrstuvwxyz|-7}} → tuvwxyz
Instead if substring length, use index for last character
మార్చు
By using parameter |4=n
, a number, you do not ask for substring length, but the last character (as counted from the start of the input string):
{{str mid|Abcdefghijklmnopqrstuvwxyz|5||7}} → efg
In the returned substring, spaces are kept:
>{{str mid|I like this.|2|6}}< → >like<
But the input string is trimmed:
>{{str mid| I like this. |2|6}}< → >like<
When the ranges (either param2 or the substring length) is out impossible in the string, an error is returned:
{{str mid|Abcdefghijklmnopqrstuvwxyz|30}} → String Module Error: String subset index out of range
{{str mid|Abcdefghijklmnopqrstuvwxyz|0|45}} → efghijklmnopqrstuvwxyz
The error can be suppressed by using |ignore errors=true
. A blank (empty string) will be returned:
{{str mid|Abcdefghijklmnopqrstuvwxyz|0|45|ignore errors=true}} → efghijklmnopqrstuvwxyz
|no category=true
switches off category adding.
|error category=[[Category:Your category name]]
sets the category to be added when in case of an error.
Default is Category:Errors reported by Module String .
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. {{ 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