diff options
Diffstat (limited to 'docs/content/en/functions/strings/FindRe.md')
-rw-r--r-- | docs/content/en/functions/strings/FindRe.md | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/docs/content/en/functions/strings/FindRe.md b/docs/content/en/functions/strings/FindRe.md new file mode 100644 index 000000000..4a7811f3d --- /dev/null +++ b/docs/content/en/functions/strings/FindRe.md @@ -0,0 +1,41 @@ +--- +title: strings.FindRE +linkTitle: findRE +description: Returns a slice of strings that match the regular expression. +categories: [functions] +keywords: [] +menu: + docs: + parent: functions +function: + aliases: [findRE] + returnType: string + signatures: ['strings.FindRE PATTERN INPUT [LIMIT]'] +relatedFunctions: + - strings.FindRE + - strings.FindRESubmatch + - strings.Replace + - strings.ReplaceRE +aliases: [/functions/findre] +--- +By default, `findRE` finds all matches. You can limit the number of matches with an optional LIMIT argument. + +{{% readfile file="/functions/_common/regular-expressions.md" %}} + +This example returns a slice of all second level headings (`h2` elements) within the rendered `.Content`: + +```go-html-template +{{ 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: + +```go-html-template +{{ findRE `(?s)<h2.*?>.*?</h2>` .Content 1 }} +``` + +{{% note %}} +You can write and test your regular expression using [regex101.com](https://regex101.com/). Be sure to select the Go flavor before you begin. +{{% /note %}} |