--- page_title: substr - Functions - Configuration Language description: |- The substr function extracts a substring from a given string by offset and length. --- # `substr` Function `substr` extracts a substring from a given string by offset and (maximum) length. ```hcl substr(string, offset, length) ``` ## Examples ``` > substr("hello world", 1, 4) ello ``` The offset and length are both counted in _unicode characters_ rather than bytes: ``` > substr("🤔🤷", 0, 1) 🤔 ``` The offset index may be negative, in which case it is relative to the end of the given string. The length may be -1, in which case the remainder of the string after the given offset will be returned. ``` > substr("hello world", -5, -1) world ``` If the length is greater than the length of the string, the substring will be the length of all remaining characters. ``` > substr("hello world", 6, 10) world ```