std::basic_string_view<CharT,Traits>::find_first_of - cppreference.com

From cppreference.com

constexprsize_typefind_first_of(basic_string_viewv,size_typepos=0)constnoexcept; (1) (since C++17)constexprsize_typefind_first_of(CharTch,size_typepos=0)constnoexcept; (2) (since C++17)constexprsize_typefind_first_of(constCharT*s,size_typepos,size_typecount)const; (3) (since C++17)constexprsize_typefind_first_of(constCharT*s,size_typepos=0)const; (4) (since C++17)Finds the first character equal to any of the characters in the given character sequence.

1) Finds the first occurrence of any of the characters of v in this view, starting at position pos.

2) Equivalent to find_first_of(basic_string_view(std::addressof(ch),1),pos).

3) Equivalent to find_first_of(basic_string_view(s,count),pos).

4) Equivalent to find_first_of(basic_string_view(s),pos).

Parameters

v - view to search for pos - position at which to start the search count - length of the string of characters to search for s - pointer to a string of characters to search for ch - character to search for Return value

Position of the first occurrence of any character of the substring, or

npos

if no such character is found.

Complexity

O(

size()

* v.

size()

) at worst.

Example

Run this code

#include<string_view>usingnamespacestd::literals;constexprautoN=std::string_view::npos;constexprboolis_white_space(constcharc){return" \t\n\f\r\v"sv.find_first_of(c)!=N;};static_assert(1=="alignas"sv.find_first_of("klmn"sv)&&// └─────────────────────────┘N=="alignof"sv.find_first_of("wxyz"sv)&&//3=="concept"sv.find_first_of("bcde"sv,/* pos= */1)&&// └───────────────────────┘N=="consteval"sv.find_first_of("oxyz"sv,/* pos= */2)&&//6=="constexpr"sv.find_first_of('x')&&// └─────────────────────┘N=="constinit"sv.find_first_of('x')&&//6=="const_cast"sv.find_first_of('c',/* pos= */4)&&// └──────────────────────┘N=="continue"sv.find_first_of('c',/* pos= */42)&&//5=="co_await"sv.find_first_of("cba",/* pos= */4)&&// └───────────────────────┘7=="decltype"sv.find_first_of("def",/* pos= */2,/* count= */2)&&// └────────────────────┘N=="decltype"sv.find_first_of("def",/* pos= */2,/* count= */1)&&//is_white_space(' ')&&is_white_space('\r')&&!is_white_space('\a'));intmain(){}See also

find

find characters in the view
(public member function)

[edit]

rfind

find the last occurrence of a substring
(public member function)

[edit]

find_last_of

find last occurrence of characters
(public member function)

[edit]

find_first_not_of

find first absence of characters
(public member function)

[edit]

find_last_not_of

find last absence of characters
(public member function)

[edit]

find_first_of

find first occurrence of characters
(public member function of std::basic_string<CharT,Traits,Allocator>)

[edit]