z
Skjalfesting til fyrimyndina
The Template:Str_index_code extracts a character from parameter 1, at the location in parameter 2, using an encode/decode method for handling special markup characters. Any character can be extracted, including: colon, semicolon, asterisk ('*') and hashmark ('#').
The Template:str_index_any extracts a specified nth character from a string, even allowing for accented letters or diacritics to be included in the string. The string can be any length, but position n (parameter 2) is limited to 500 at most.
- {{str index any|text|n}} = Returns the n-th character of text.
Supports a larger character set, allowing the text to have accented letters or other diacritical marks. Returns an error message for unknown characters. Returns   for a blank space, which can be converted to a simple space by xspace.
- {{ Str index code |0123456789ABCDEF|15}} → E
- {{ Str index code |ÁBĆĎÉf-ABCDEF|4}} → Ď
- {{ Str index code |Very very...long string of 500 characteRs|499}} → R
- {{ Str len |{{ Str index code |a b|1}}}} → 1
- {{ Str len |{{ Str index code |a b|2}}}} → 34
- {{ Str len |{{ Str index code |a b|3}}}} → 1
The last example shows extraction of letter "b" with string length as 1. The prior example extracts a blank but considers the length as 5 for the 5 characters " " even though there is only 1 space, and hence, {{str len| }} → 5. If surrounded by 2 other characters, then the length might be totalled incorrectly as 7 (rather than 3 characters):
- {{ Str len |<{{ Str index code |a b|2}}>}} → 36
- {{ Str len |X{{ Str index code |a b|2}}X}} → 36
- {{ Str len |X{{ Str index |a b|2}}X}} → 3
- X{{ Str index code |a b|2}}X → X X
The same string-length problem occurs when using template {{ Str index }}. There might be other quirks as well, but most cases work as expected.
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 | |
---|
Dedicated | {{unlink}} | 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.
|
|
|
|
|
|