Skip to main content

strings.Trim

{{ trim "++foo--" "+-" }} → foo

To remove leading and trailing newline characters and carriage returns:

{{ trim "\nfoo\n" "\n\r" }} → foo
{{ trim "\n\nfoo\n\n" "\n\r" }} → foo

{{ trim "\r\nfoo\r\n" "\n\r" }} → foo
{{ trim "\r\n\r\nfoo\r\n\r\n" "\n\r" }} → foo

The strings.Trim function is commonly used in shortcodes to remove leading and trailing newlines characters and carriage returns from the content within the opening and closing shortcode tags.

For example, with this Markdown:

{{</* my-shortcode */>}}
Able was I ere I saw Elba.
{{</* /my-shortcode */>}}

The value of .Inner in the shortcode template is:

\nAble was I ere I saw Elba.\n

If authored on a Windows system the value of .Inner might, depending on the editor configuration, be:

\r\nAble was I ere I saw Elba.\r\n

This construct is common in shortcode templates:

{{ trim .Inner "\n\r" }}