[range.lazy.split.overview]

# 25 Ranges library [[ranges]](./#ranges)

## 25.7 Range adaptors [[range.adaptors]](range.adaptors#range.lazy.split.overview)

### 25.7.16 Lazy split view [[range.lazy.split]](range.lazy.split#overview)

#### 25.7.16.1 Overview [range.lazy.split.overview]

[1](#1)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/ranges.tex#L7820)

lazy_split_view takes a view and a delimiter, and splits
the view into subranges on the delimiter[.](#1.sentence-1)

The delimiter can be
a single element or a view of elements[.](#1.sentence-2)

[2](#2)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/ranges.tex#L7825)

The name views​::​lazy_split denotes a
range adaptor object ([[range.adaptor.object]](range.adaptor.object "25.7.2 Range adaptor objects"))[.](#2.sentence-1)

Given subexpressions E and F,
the expression views​::​lazy_split(E, F) is expression-equivalent tolazy_split_view(E, F)[.](#2.sentence-2)

[3](#3)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/ranges.tex#L7833)

[*Example [1](#example-1)*: string str{"the quick brown fox"};for (auto word : str | views::lazy_split(' ')) {for (char ch : word) cout << ch;
 cout << '*';}// The above prints the*quick*brown*fox* â *end example*]
