This template is used on approximately 115,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 is a documentation subpage for Template:Str find . It may contain usage information, categories and other content that is not part of the original template page.
This template uses Lua:
((Str find|text |sub_string ))
Returns the position of first appearance of sub_string in text .
The comparison is case sensitive.
Returns -1 if sub_string not found
Character position is 1 based (not 0 based as usual in calculations).
If sub_string is empty, this routine returns 1. This case will often have to be handled specially.In the examples, the string to be searched is Abcdefghijklm
:
A; 1
a; -1
def; 4
klm; 11
zyx; -1
empty;klm;-1
empty;empty; 1 Template parameters
Parameter Description Type Status Text 1
The text to search within
String required Sub_string 2
The string to be searched within the text
String required
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