std::basic_string_view<CharT,Traits>::contains
来自 cppreference.com
< cpp | string | basic string view
constexpr bool contains( basic_string_view sv ) const noexcept; |
(1) | (自 C++23 起) |
constexpr bool contains( CharT c ) const noexcept; |
(2) | (自 C++23 起) |
constexpr bool contains( const CharT* s ) const; |
(3) | (自 C++23 起) |
检查字符串视图是否包含给定的子字符串,其中
1) 子字符串是一个字符串视图。
2) 子字符串是一个单个字符。
3) 子字符串是一个以空字符结尾的字符字符串。
所有三个重载都等效于 return find(x) != npos;,其中 x
是参数。
内容 |
[编辑] 参数
sv | - | 一个字符串视图 |
c | - | 单个字符 |
s | - | 以空字符结尾的字符字符串 |
[编辑] 返回值
true 如果字符串视图包含提供的子字符串,否则为 false。
[编辑] 注意
特性测试 宏 | 值 | Std | 特性 |
---|---|---|---|
__cpp_lib_string_contains |
202011L | (C++23) | contains 函数 |
[编辑] 示例
运行此代码
#include <string_view> using namespace std::literals; static_assert ( // bool contains(basic_string_view x) const noexcept; "https://cppreference.com"sv.contains("cpp"sv) == true and "https://cppreference.com"sv.contains("php"sv) == false and // bool contains(CharT x) const noexcept; "C++23"sv.contains('+') == true and "C++23"sv.contains('-') == false and // bool contains(const CharT* x) const; std::string_view("basic_string_view").contains("string") == true and std::string_view("basic_string_view").contains("String") == false ); int main() {}
[编辑] 另请参阅
(C++20) |
检查字符串视图是否以给定的前缀开头 (公共成员函数) |
(C++20) |
检查字符串视图是否以给定的后缀结尾 (公共成员函数) |
在视图中查找字符 (公共成员函数) | |
返回一个子字符串 (公共成员函数) | |
(C++23) |
检查字符串是否包含给定的子字符串或字符 ( std::basic_string<CharT,Traits,Allocator> 的公共成员函数) |