Template:Str mid/doc

From 'City of Adelaide' History and Genealogy Site
Jump to navigation Jump to search

{{#invoke:Message box|mbox}} {{#invoke:Lua banner|main}}

Usage

Characters in the source string are counted: the first is index <syntaxhighlight lang="text" enclose="none">1</syntaxhighlight>, the last one is index <syntaxhighlight lang="text" enclose="none">length of string</syntaxhighlight>. 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 charater returned is end index.

  • {{str mid|Abcdefghijklmnopqrstuvwxyz|5|3}} → Expression error: Unrecognised punctuation character "{".

If parameter 2 is omitted, start is from character 1:

  • {{str mid|Abcdefghijklmnopqrstuvwxyz||5}} → Expression error: Unrecognised punctuation character "{".

If parameter 3 is omitted, the hole rest of the string is returned:

  • {{str mid|Abcdefghijklmnopqrstuvwxyz|15}} → Expression error: Unrecognised punctuation character "{".

Counting from the end

By entering a negative value, the index is counted from the end:

  • {{str mid|Abcdefghijklmnopqrstuvwxyz|-7|4}} → Expression error: Unrecognised punctuation character "{".
  • {{str mid|Abcdefghijklmnopqrstuvwxyz|-7}} → Expression error: Unrecognised punctuation character "{".

Instead if substring length, use index for last character

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}} → Expression error: Unrecognised punctuation character "{".

Spaces are kept

In the returned substring, spaces are kept:

  • >{{str mid|I like this.|2|6}}< → >Expression error: Unrecognised punctuation character "{".<

But the input string is trimmed:

  • >{{str mid| I like this. |2|6}}< → >Expression error: Unrecognised punctuation character "{".<

Error messages

When the ranges (either param2 or the substring length) is out impossible in the string, an error is returned:

  • {{str mid|Abcdefghijklmnopqrstuvwxyz|30}} → Expression error: Unrecognised punctuation character "{".
  • {{str mid|Abcdefghijklmnopqrstuvwxyz|0|45}} → Expression error: Unrecognised punctuation character "{".

The error can be supporesssed by using |ignore errors=true. A blank (empty string) will be returned:

  • {{str mid|Abcdefghijklmnopqrstuvwxyz|0|45|ignore errors=true}} → Expression error: Unrecognised punctuation character "{".

Error category

  • |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.

See also

{{#invoke:Navbox|navbox}}