mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-14 20:37:55 -05:00
1.5 KiB
1.5 KiB
title | linkTitle | description | categories | keywords | menu | function | relatedFunctions | aliases | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
strings.ReplaceRE | replaceRE | Returns a string, replacing all occurrences of a regular expression with a replacement pattern. |
|
|
|
|
|
By default, replaceRE
replaces all matches. You can limit the number of matches with an optional LIMIT argument.
{{% readfile file="/functions/_common/regular-expressions.md" %}}
This example replaces two or more consecutive hyphens with a single hyphen:
{{ $s := "a-b--c---d" }}
{{ replaceRE `(-{2,})` "-" $s }} → a-b-c-d
To limit the number of replacements to one:
{{ $s := "a-b--c---d" }}
{{ replaceRE `(-{2,})` "-" $s 1 }} → a-b-c---d
You can use $1
, $2
, etc. within the replacement string to insert the groups captured within the regular expression:
{{ $s := "http://gohugo.io/docs" }}
{{ replaceRE "^https?://([^/]+).*" "$1" $s }} → gohugo.io
{{% note %}} You can write and test your regular expression using regex101.com. Be sure to select the Go flavor before you begin. {{% /note %}}