Jump to content

Template:Str len/doc

From Wikibooks, open books for an open world

This is the {{str len}} meta-template.

It takes a string as parameter and returns its length (excluding those at the start and end). It can count up to 500 in length, and returns 500 for strings that are too long.

Note! For most usage cases it is much easier and costs much less server resources to use {{str ≥ len}} or one of its sister templates. See the see also section below.

Examples

[edit source]

If the parameter is empty or undefined it is considered to be of zero length:

{{str len}} returns 0
{{str len|}} returns 0
{{str len| }} returns 0

It counts the length correctly, even if the string contains spaces, looks like a number, or contains special characters:

{{str len| ab cde }} returns 6
{{str len| 1234567 }} returns 7
{{str len| café åäö }} returns 8

It can measure strings up to 500 in length, and returns 500 for strings that are too long:

{{str len| 499-characters... }} returns 499
{{str len| 1000-characters... }} returns 500

Technical details

[edit source]

MediaWiki has no parser function or magic word to measure string lengths. And measuring string length using template code is very heavy on the servers. Thus this template is as optimized as possible. But you should consider using {{str ≥ len}} instead, since for most usage cases it is much easier to use and it costs much less server resources.

This template calls {{str len/core}} which does most of the work. For documentation on the internal workings of these two templates see /core.

See also

[edit source]

Trimming templates:

  • {{Str left}} – To trim down to a specified number of characters, or duplicate the string to a specified number.
  • {{Str trim}} — To trim any leading or trailing whitespace.
  • {{Str right}} — To trim the first specified number of characters.
  • {{Str rightc}} — To trim the first specified number of characters, returns a parameter if the string is empty.
  • {{Str sub}} — To trim down to a specified number, starting at a given number from the left, less than 50.
  • {{Str sub long}} — To trim down to a specified number, starting at a given number from the left, less than 100.

Analyzing templates:

  • {{Str find}} – Returns the numerical location of a given string in a string, up to 50 characters.
  • {{Str index}} – Returns a given character from a string, but not accented letters.
  • {{Str index any}} – Returns a given character from a string, but not a space.
  • {{Str len}} – Returns a string's length. Can count up to 500 characters.

String length comparison templates:

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