Namensräume
Varianten
Aktionen

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

Von cppreference.com
 
 
 
 
constexpr bool starts_with( basic_string_view sv ) const noexcept;
(1) (seit C++20)
constexpr bool starts_with( CharT ch ) const noexcept;
(2) (seit C++20)
constexpr bool starts_with( const CharT* s ) const;
(3) (seit C++20)

Prüft, ob die String-Ansicht mit dem gegebenen Präfix beginnt, wobei

1) das Präfix eine String-Ansicht ist. Gibt effektiv zurück basic_string_view(data(), std::min(size(), sv.size())) == sv.
2) das Präfix ein einzelnes Zeichen ist. Gibt effektiv zurück !empty() && Traits::eq(front(), ch).
3) das Präfix eine nullterminierte Zeichenkette ist. Gibt effektiv zurück starts_with(basic_string_view(s)).

Inhalt

[edit] Parameter

sv - eine String-Ansicht, die möglicherweise ein Ergebnis der impliziten Konvertierung aus std::basic_string ist
ch - Ein einzelnes Zeichen.
s - Ein null-terminierter Zeichenstring.

[edit] Rückgabewert

true, wenn die String-Ansicht mit dem angegebenen Präfix beginnt, andernfalls false.

[edit] Anmerkungen

Feature-Test-Makro Wert Std Feature
__cpp_lib_starts_ends_with 201711L (C++20) Prüfung von String-Präfixen und -Suffixen: starts_with() und ends_with()

[edit] Beispiel

#include <cassert>
#include <string_view>
 
int main()
{
    using namespace std::literals;
 
    assert
    (""
        // (1) starts_with( basic_string_view )
        && "https://cppreference.de"sv.starts_with("http"sv) == true
        && "https://cppreference.de"sv.starts_with("ftp"sv) == false
 
        // (2) starts_with( CharT )
        && "C++20"sv.starts_with('C') == true
        && "C++20"sv.starts_with('J') == false
 
        // (3) starts_with( const CharT* )
        && std::string_view("string_view").starts_with("string") == true
        && std::string_view("string_view").starts_with("String") == false
    );
}

[edit] Siehe auch

(C++20)
prüft, ob die Zeichenansicht mit dem gegebenen Suffix endet
(öffentliche Member-Funktion) [edit]
prüft, ob der String mit dem gegebenen Präfix beginnt
(öffentliche Memberfunktion von std::basic_string<CharT,Traits,Allocator>) [edit]
(C++20)
prüft, ob der String mit dem gegebenen Suffix endet
(öffentliche Memberfunktion von std::basic_string<CharT,Traits,Allocator>) [edit]
(C++23)
prüft, ob der String die gegebene Teilzeichenkette oder das gegebene Zeichen enthält
(öffentliche Memberfunktion von std::basic_string<CharT,Traits,Allocator>) [edit]
(C++23)
prüft, ob die Zeichenansicht die gegebene Teilzeichenkette oder das gegebene Zeichen enthält
(öffentliche Member-Funktion) [edit]
vergleicht zwei Ansichten
(öffentliche Member-Funktion) [edit]