Namespaces
Variants

std::text_encoding:: comp-name

From cppreference.net
static constexpr bool /*comp-name*/ ( std:: string_view a, std:: string_view b ) ;
(depuis C++26)
( exposition uniquement* )

Compare deux chaînes a et b encodées en encodage littéral ordinaire selon les règles de Unicode Charset Alias Matching .

Deux chaînes sont considérées égales lors d'une comparaison de gauche à droite après :

  • suppression de tous les caractères non alphanumériques,
  • conversion de toutes les lettres en une même casse, et
  • suppression de toute séquence isolée de '0' qui ne suit pas immédiatement un préfixe numérique. Un préfixe numérique consiste en un chiffre non nul ( '1' à '9' ) optionnellement suivi d'un ou plusieurs caractères non alphanumériques.

Voici les exemples suivants :

static_assert(/*nom-comp*/("UTF-8", "utf8") == true);
static_assert(/*nom-comp*/("u.t.f-008", "utf8") == true);
static_assert(/*nom-comp*/("ISO-8859-1", "iso88591") == true);
static_assert(/*nom-comp*/("ut8", "utf8") == false);
static_assert(/*nom-comp*/("utf-80", "utf8") == false);

Paramètres

a, b - chaînes à comparer

Valeur de retour

true si deux chaînes de caractères sont égales selon la description ci-dessus ; false sinon.