Namespaces
Variants

std::basic_string_view<CharT,Traits>::contains

ja.cppreference.net より
 
 
 
 
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) 部分文字列はヌル終端文字列です。

3 つのオーバーロードはすべて return find(x) != npos; と同等です。ただし、x は引数です。

パラメータ

sv - 文字列ビュー
c - 単一文字
s - ヌル終端文字列

戻り値

true 文字列ビューが指定された部分文字列を含む場合、 false それ以外の場合。

注記

機能テスト マクロ 値 標準 機能
__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://ja.cppreference.net"sv.contains("cpp"sv) == true and
    "https://ja.cppreference.net"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++23)
文字列が指定された部分文字列または文字を含むかどうかをチェックする
(std::basic_string<CharT,Traits,Allocator>の公開メンバ関数)