String Helpers

Handlebars provides a set of built-in helpers for working with strings. These helpers are used to manipulate and format strings, making it easier to work with text in templates.

string

Visit the: code | unit tests

{{append}}

Append the specified suffix to the given string.

Params

  • str {String}
  • suffix {String}
  • returns {String}

Example


{{append item.stem ".html"}}

{{camelcase}}

camelCase the characters in the given string.

Params

  • string {String}: The string to camelcase.
  • returns {String}

Example

{{camelcase "foo bar baz"}};

{{capitalize}}

Capitalize the first word in a sentence.

Params

  • str {String}
  • returns {String}

Example

{{capitalize "foo bar baz"}}

{{capitalizeAll}}

Capitalize all words in a string.

Params

  • str {String}
  • returns {String}

Example

{{capitalizeAll "foo bar baz"}}

{{center}}

Center a string using non-breaking spaces

Params

  • str {String}
  • spaces {Number}
  • returns {String}

Example

{{center "foo" 2}}

{{chop}}

Like trim, but removes both extraneous whitespace and non-word characters from the beginning and end of a string.

Params

  • string {String}: The string to chop.
  • returns {String}

Example

{{chop "_ABC_"}}


{{chop "-ABC-"}}


{{chop " ABC "}}

{{dashcase}}

dash-case the characters in string. Replaces non-word characters and periods with hyphens.

Params

  • string {String}
  • returns {String}

Example

{{dashcase "a-b-c d_e"}}

{{dotcase}}

dot.case the characters in string.

Params

  • string {String}
  • returns {String}

Example

{{dotcase "a-b-c d_e"}}

{{downcase}}

Lowercase all of the characters in the given string. Alias for lowercase.

Params

  • string {String}
  • returns {String}

Example

{{downcase "aBcDeF"}}

{{ellipsis}}

Truncates a string to the specified length, and appends it with an elipsis, .

Params

  • str {String}
  • length {Number}: The desired length of the returned string.
  • returns {String}: The truncated string.

Example

{{ellipsis (sanitize "<span>foo bar bazspan>"), 7}}

{{ellipsis "foo bar baz", 7}}

{{hyphenate}}

Replace spaces in a string with hyphens.

Params

  • str {String}
  • returns {String}

Example

{{hyphenate "foo bar baz qux"}}

{{isString}}

Return true if value is a string.

Params

  • value {Any}
  • returns {Boolean}

Example

{{isString "foo"}}

{{lowercase}}

Lowercase all characters in the given string.

Params

  • str {String}
  • returns {String}

Example

{{lowercase "Foo BAR baZ"}}

{{occurrences}}

Return the number of occurrences of substring within the given string.

Params

  • str {String}
  • substring {String}
  • returns {Number}: Number of occurrences

Example

{{occurrences "foo bar foo bar baz" "foo"}}

{{pascalcase}}

PascalCase the characters in string.

Params

  • string {String}
  • returns {String}

Example

{{pascalcase "foo bar baz"}}

{{pathcase}}

path/case the characters in string.

Params

  • string {String}
  • returns {String}

Example

{{pathcase "a-b-c d_e"}}

{{plusify}}

Replace spaces in the given string with pluses.

Params

  • str {String}: The input string
  • ch {String}: Optional character to replace (defaults to space)
  • returns {String}: Input string with spaces replaced by plus signs

Example

{{plusify "foo bar baz"}}

{{prepend}}

Prepends the given string with the specified prefix.

Params

  • str {String}
  • prefix {String}
  • returns {String}

Example


{{prepend val "foo-"}}

{{raw}}

Render a block without processing mustache templates inside the block.

Params

  • options {Object}
  • returns {String}

Example

{{{{#raw}}}}
{{foo}}
{{{{/raw}}}}

{{remove}}

Remove all occurrences of substring from the given str.

Params

  • str {String}
  • substring {String}
  • returns {String}

Example

{{remove "a b a b a b" "a "}}

{{removeFirst}}

Remove the first occurrence of substring from the given str.

Params

  • str {String}
  • substring {String}
  • returns {String}

Example

{{removeFirst "a b a b a b" "a"}}

{{replace}}

Replace all occurrences of substring a with substring b.

Params

  • str {String}
  • a {String}
  • b {String}
  • returns {String}

Example

{{replace "a b a b a b" "a" "z"}}

{{replaceFirst}}

Replace the first occurrence of substring a with substring b.

Params

  • str {String}
  • a {String}
  • b {String}
  • returns {String}

Example

{{replaceFirst "a b a b a b" "a" "z"}}

{{reverse}}

Reverse a string.

Params

  • str {String}
  • returns {String}

Example

{{reverse "abcde"}}

{{sentence}}

Sentence case the given string

Params

  • str {String}
  • returns {String}

Example

{{sentence "hello world. goodbye world."}}

{{snakecase}}

snake_case the characters in the given string.

Params

  • string {String}
  • returns {String}

Example

{{snakecase "a-b-c d_e"}}

{{split}}

Split string by the given character.

Params

  • string {String}: The string to split.
  • character {String}: The character to split by. Default is an empty string.
  • returns {Array}: Array of split strings.

Example

{{split "a,b,c" ","}}

{{startsWith}}

Tests whether a string begins with the given prefix.

Params

  • prefix {String}: The prefix to test for
  • testString {String}: The string to test
  • returns {Boolean}: True if testString starts with prefix, false otherwise

Example

{{startsWith "Hello" "Hello, world!"}}


{{startsWith "Goodbye" "Hello, world!"}}

{{titleize}}

Title case the given string.

Params

  • str {String}
  • returns {String}

Example

{{titleize "this is title case"}}

{{trim}}

Removes extraneous whitespace from the beginning and end of a string.

Params

  • string {String}: The string to trim.
  • returns {String}

Example

{{trim " ABC "}}

{{trimLeft}}

Removes extraneous whitespace from the beginning of a string.

Params

  • string {String}: The string to trim.
  • returns {String}

Example

{{trimLeft " ABC "}}

{{trimRight}}

Removes extraneous whitespace from the end of a string.

Params

  • string {String}: The string to trim.
  • returns {String}

Example

{{trimRight " ABC "}}

{{truncate}}

Truncate a string to the specified length. Also see ellipsis.

Params

  • str {String}
  • limit {Number}: The desired length of the returned string.
  • suffix {String}: Optionally supply a string to use as a suffix to denote when the string has been truncated.
  • returns {String}: The truncated string.

Example

{{truncate "foo bar baz" 7}}

{{truncate "foo bar baz" 7 "..."}}

{{truncateWords}}

Truncate a string to have the specified number of words. Also see truncate.

Params

  • str {String}
  • limit {Number}: The number of words to keep.
  • suffix {String}: Optionally supply a string to use as a suffix. Default is '...'.
  • returns {String}: The truncated string.

Example

{{truncateWords "foo bar baz" 1}}

{{truncateWords "foo bar baz" 2}}

{{truncateWords "foo bar baz" 3}}

{{upcase}}

Uppercase all of the characters in the given string. Alias for uppercase.

Params

  • string {String}
  • returns {String}

Example

{{upcase "aBcDeF"}}

{{uppercase}}

Uppercase all of the characters in the given string. If used as a block helper it will uppercase the entire block. This helper does not support inverse blocks.

Params

  • str {String}: The string to uppercase
  • options {Object}: Handlebars options object
  • returns {String}

Example

{{uppercase "aBcDeF"}}