| 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
Counting from the end[edit source]
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[edit source]
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 |
---|
|
---|
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. | {{trim quotes}} | To trim leading or trailing matching quotes. |
| |
|
---|
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 parentheses 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. | {{title decade}} | Returns the 4-digit decade (e.g. "1740s") 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. | {{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 |
|
{{str len}} | Returns a string's length. | {{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. |
|
|
|
|
|