hugo/docs/content/en/functions/strings/FindRe.md
Bjørn Erik Pedersen 5fd1e74903
Merge commit '9b0050e9aabe4be65c78ccf292a348f309d50ccd' as 'docs'
```
git subtree add --prefix=docs/ https://github.com/gohugoio/hugoDocs.git master --squash
```

Closes #11925
2024-01-27 10:48:57 +01:00

1.1 KiB

title description categories keywords action aliases
strings.FindRE Returns a slice of strings that match the regular expression.
aliases related returnType signatures
findRE
functions/strings/FindRESubmatch
functions/strings/Replace
functions/strings/ReplaceRE
[]string
strings.FindRE PATTERN INPUT [LIMIT]
/functions/findre

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

{{% include "functions/_common/regular-expressions.md" %}}

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 }}

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