Template:Str len/doc

From Wikimedia Commons, the free media repository
Jump to: navigation, search


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.

Note: if you want to edit this template, first try your modifications on {{Str len/sandbox}}.You can then test your edits in {{Str len/testcases}}.
When the new version is ready, you can move it to the main template.

Examples[edit]

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 1000

Technical details[edit]

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 optimised 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. The talk page might also have more details.

See also[edit]

Trimming templates:

  • {{Trunc}} – To trim down to a specified number of characters.
  • {{Trim}} — To trim any leading or trailing whitespace.
  • {{Str left}} – To trim down to a specified number of characters, or duplicate the string to a specified number.

Analyzing templates:

  • {{Str endswith}} – To check if a string ends with a given string.
  • {{Str find}} – Returns the numerical location of a given string in a string, up to 50 characters.
  • {{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 "shorter or equally long" or "longer" than a given length.

Sandboxes and test cases:

Technical stuff:

Feature requests:

  • bugzilla:6455 - Set $wgPFEnableStringFunctions = true on WMF wikis
  • bugzilla:26092 - Enable or install string parsing wikimarkup functionality on WMF wikis