summaryrefslogtreecommitdiffstats
path: root/docs/content/en/functions/strings/Substr.md
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2023-10-20 09:43:56 +0200
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2023-10-20 09:43:56 +0200
commite2dd4cd05fa96a08d49b3b198edf0ccf9a94970e (patch)
tree712334f7e7a657155706f556040575bea9b7757f /docs/content/en/functions/strings/Substr.md
parentfd381718101a35a5f5f92d5a05b3a0c36ef50db0 (diff)
parente509cac533600cf4fa8382c9cdab78ddd82db688 (diff)
downloadhugo-e2dd4cd05fa96a08d49b3b198edf0ccf9a94970e.tar.gz
hugo-e2dd4cd05fa96a08d49b3b198edf0ccf9a94970e.zip
Merge commit 'e509cac533600cf4fa8382c9cdab78ddd82db688'
Diffstat (limited to 'docs/content/en/functions/strings/Substr.md')
-rw-r--r--docs/content/en/functions/strings/Substr.md42
1 files changed, 42 insertions, 0 deletions
diff --git a/docs/content/en/functions/strings/Substr.md b/docs/content/en/functions/strings/Substr.md
new file mode 100644
index 000000000..9dafa0737
--- /dev/null
+++ b/docs/content/en/functions/strings/Substr.md
@@ -0,0 +1,42 @@
+---
+title: strings.Substr
+linkTitle: substr
+description: Extracts parts of a string from a specified character's position and returns the specified number of characters.
+categories: [functions]
+keywords: []
+menu:
+ docs:
+ parent: functions
+function:
+ aliases: [substr]
+ returnType: string
+ signatures: ['strings.Substr STRING START [LENGTH]']
+relatedFunctions: []
+aliases: [/functions/substr]
+---
+
+It normally takes two argument: `start` and `length`. It can also take one argument: `start`, i.e. `length` is omitted, in which case the substring starting from start until the end of the string will be returned.
+
+To extract characters from the end of the string, use a negative start number.
+
+If `length` is given and is negative, that number of characters will be omitted from the end of string.
+
+```go-html-template
+{{ substr "abcdef" 0 }} → "abcdef"
+{{ substr "abcdef" 1 }} → "bcdef"
+
+{{ substr "abcdef" 0 1 }} → "a"
+{{ substr "abcdef" 1 1 }} → "b"
+
+{{ substr "abcdef" 0 -1 }} → "abcde"
+{{ substr "abcdef" 1 -1 }} → "bcde"
+
+{{ substr "abcdef" -1 }} → "f"
+{{ substr "abcdef" -2 }} → "ef"
+
+{{ substr "abcdef" -1 1 }} → "f"
+{{ substr "abcdef" -2 1 }} → "e"
+
+{{ substr "abcdef" -3 -1 }} → "de"
+{{ substr "abcdef" -3 -2 }} → "d"
+```