[#bsl-basic_string-01d-insert_range] = xref:bsl.adoc[bsl]::xref:bsl/basic_string-01d.adoc[basic_string<char8_t>]::insert_range :relfileprefix: ../../ :mrdocs: Insert at the specified `position` in this string the characters from the specified `range` and return an iterator providing non‐modifiable access to the first inserted character, or a non‐`const` copy of `position` if `true == bsl::ranges.empty()`. The behavior is undefined unless `position` is an iterator in the range `[begin() .. end()]` (both endpoints included). Note that `range` must meet the requirements of an input range and the values from `range` must have a type matching or convertible to (template parameter) `CHAR_TYPE`> == Synopsis Declared in `<bslstl_string.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class RANGE> xref:bsl/basic_string-01d/iterator.adoc[iterator] insert_range( xref:bsl/basic_string-01d/const_iterator.adoc[const_iterator] position, RANGE&& range); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#