Skip to main content

strings.FindRE

By default, findRE finds all matches. You can limit the number of matches with an optional LIMIT argument.

This example returns a slice of all second level headings (h2 elements) within the rendered .Content:

{{ findRE `(?s)<h2.*?>.*?</h2>` .Content }}

The s flag causes . to match \n as well, allowing us to find an h2 element that contains newlines.

To limit the number of matches to one:

{{ findRE `(?s)<h2.*?>.*?</h2>` .Content 1 }}

You can write and test your regular expression using regex101.com. Be sure to select the Go flavor before you begin.