This template is used on approximately 169,000 pages . To avoid major disruption and server load, any changes should be tested in the template's /sandbox or /testcases subpages, or in your own user subpage . The tested changes can be added to this page in a single edit. Consider discussing changes on the talk page before implementing them.
This template uses Lua :
The Template:Str_number/trim extracts a number at the start of parameter 1.
It takes a string as parameter, and returns the string trimmed to the beginning number if non-numeric text does not appear before the first number.
{{Str number/trim}} →
{{Str number/trim|abcde}} →
{{Str number/trim|abcde123}} →
{{Str number/trim|123456}} → 123456
{{Str number/trim|123 456}} → 123
{{Str number/trim|1976–2006}} → 1976
{{Str number/trim|19/76+2006}} → 19
{{Str number/trim|19 (302)}} → 19
{{Str number/trim|1234abc}} → 1234
{{Str number/trim|1234abc56}} → 1234
{{Str number/trim|12345678901234567890}} → 12345678901234567890
{{Str number/trim|1234567890123456789012345}} → 1234567890123456789012345
{{Str number/trim| 1234567890123456789012345}} → 1234567890123456789012345
{{Str number/trim|13<ref>a reference</ref>}} → 13
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