Namespaces
Variants

std::basic_string<CharT,Traits,Allocator>:: ends_with

From cppreference.net
std::basic_string
constexpr bool
ends_with ( std:: basic_string_view < CharT, Traits > sv ) const noexcept ;
(1) (depuis C++20)
constexpr bool
ends_with ( CharT ch ) const noexcept ;
(2) (depuis C++20)
constexpr bool
ends_with ( const CharT * s ) const ;
(3) (depuis C++20)

Vérifie si la chaîne se termine par le suffixe donné. Le suffixe peut être l'un des suivants :

1) Une vue de chaîne sv (qui peut résulter d'une conversion implicite d'une autre std::basic_string ).
2) Un seul caractère ch .
3) Une chaîne de caractères terminée par un caractère nul s .

Les trois surcharges retournent effectivement std:: basic_string_view < CharT, Traits > ( data ( ) , size ( ) ) . ends_with ( x ) , où x est le paramètre.

Table des matières

Paramètres

sv - une vue de chaîne qui peut résulter d'une conversion implicite d'un autre std::basic_string
ch - un caractère unique
s - une chaîne de caractères terminée par un caractère nul

Valeur de retour

true si la chaîne se termine par le suffixe fourni, false sinon.

Notes

Macro de test de fonctionnalité Valeur Norme Fonctionnalité
__cpp_lib_starts_ends_with 201711L (C++20) Vérification de préfixe et suffixe de chaîne : starts_with() et ends_with()

Exemple

#include <cassert>
#include <string>
#include <string_view>
int main()
{
    using namespace std::literals;
    const auto str = "Hello, C++20!"s;
    assert
    (""
        && str.ends_with("C++20!"sv)  // (1)
        && !str.ends_with("c++20!"sv) // (1)
        && str.ends_with("C++20!"s)   // (1) implicit conversion string to string_view
        && !str.ends_with("c++20!"s)  // (1) implicit conversion string to string_view
        && str.ends_with('!')         // (2)
        && !str.ends_with('?')        // (2)
        && str.ends_with("C++20!")    // (3)
        && !str.ends_with("c++20!")   // (3)
    );
}

Voir aussi

vérifie si la chaîne commence par le préfixe donné
(fonction membre publique)
vérifie si la vue de chaîne commence par le préfixe donné
(fonction membre publique de std::basic_string_view<CharT,Traits> )
(C++20)
vérifie si la vue de chaîne se termine par le suffixe donné
(fonction membre publique de std::basic_string_view<CharT,Traits> )
(C++23)
vérifie si la chaîne contient la sous-chaîne ou le caractère donné
(fonction membre publique)
(C++23)
vérifie si la vue de chaîne contient la sous-chaîne ou le caractère donné
(fonction membre publique de std::basic_string_view<CharT,Traits> )
compare deux chaînes
(fonction membre publique)
retourne une sous-chaîne
(fonction membre publique)