The string-inserter Template:Strloc_insert inserts a string into another string at a specified location, or appends it at the end.
{{ Strloc insert |<string1>|strloc=<n>|<string2>}}
Returns string1 with string2 inserted at location strloc=n , where n =1 denotes the start of the string (prepending). If strloc <= 0 then string2 is appended at the end of string1 . The parameter strloc can be a math formula, such as: strloc={{{len}}} -2, or strloc=abs(-2*5)+6.
The following show various uses:
{{ Strloc insert|abcdef|strloc=4|ZZZ}} → abcZZZdef
{{ Strloc insert|123456|strloc=1|++}} → ++123456
{{ Strloc insert|Abcd|strloc=0 |EFG}} → AbcdEFG
{{Strloc insert|<i>Out of Africa (film)|strloc=17|</i>}} → Out of Africa (film)
{{Strloc insert|[[Out of Africa (film)|<i>Out of Africa (film)]]|strloc=17+20|</i>}} → Out of Afr ica (film)
Note, the example wikilinking "Out of Africa" inserted "< /i>" as end-italics, but with strloc=17+20 to skip farther in the "[[ ]]" wikilink string.
{{Strloc insert|<i>Cosmos (book)|strloc={{strfind_short|Cosmos (book)|(|1}}|</i>}} → Cosm os (book)
In the example with "Cosmos (book) " the number for strloc was set by finding "(" in the title. If there had been no "(" then the result would append "< /i>" at the end of the title.
The text at the end (after string2) is subject to the limitations of Template:Str_right . Spaces around the inserted string are limited to 1 space, before or after:
Spaces beyond the inserted string might be encoded as "& #32;" rather than being real spaces.
String-handling templates
By counting { { str mid } } To return a substring specified by position and length. { { trunc } } To trim down to a specified number of characters. { { str left } } To trim down to a specified number of characters or duplicate the string to a specified number. { { str crop } } To crop a specified number of characters off the end. { { chop head and tail } } To crop a specified number of characters off the beginning and end.
{ { str right } } To trim the first specified number of characters. { { str rightc } } To return a number of characters from the end, returns a parameter if the string is empty. { { str rightmost } } To trim down to the last specified number of characters. { { str sub old } } To trim down to a specified number, starting at a given number from the left. { { str sub new } } Select a substr based on starting and ending index. { { str index } } Returns a given character from a string, but not accented letters.
By checking { { trim } } To trim any leading or trailing whitespace { { str letter/trim } } To trim down to the beginning letters. { { str number/trim } } To trim down to the beginning numbers. { { trim brackets } } To trim any leading or trailing square brackets.
Dedicated { { delink } } Removes wikilink brackets (wikicode). { { remove file prefix } } Removes "File:" (or "Image:") from filenames. { { PAGENAMEBASE } } To trim off any parenthesis text at the end of a string (disambiguation). { { title disambig text } } Returns text in parenthesis at the end of a string (disambiguation).
{ { WikiProjectbasename } } Removes "WikiProject" from a pagename. { { remove unranked } } Removes the string "unranked_" from the left of a string (taxonomy). { { ship prefix } } Returns the length of a ship's name prefix, if listed (ship names). { { title year } } Returns the 4-digit year from a pagename, if any.
Insertion, replacement and length
{ { strloc insert } } Inserts a string at character location strloc, or appends if strloc<=0. { { loop } } Repeat character string a specified number of times. { { repeat } } Repeat a 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. { { str len } } Returns a string's length.
{ { iflenge } } [if len]gth [g]reater than or [e]qual to. { { str ≥ len } } To check if a string is "longer or equally long" or "shorter" than a given length. { { str ≤ len } } To check if a string is "shorter or equally long" or "longer" than a given length. { { str ≠ len } } To check if a string is "not equal" or "equal" to a given length. { { str ≤ ≥ len } } To check if a string is "shorter", "equal", or "longer" than a given length.
Analysis and technical
{ { str endswith } } To check if a string ends with a given string. { { str find } } { { strfind short } } Returns the numerical location of a given string in a string. { { str find0 } } Zero-based substring search. { { str sub find } } Searches a substring in a string at the given offset. { { str letter } } Returns the number of letters that begin a string. { { str number } } Returns the number of numbers that begin a string. { { str gtr str } } Compares two strings for alphabetical order, and returns a value accordingly.