std::text_encoding:: comp-name
From cppreference.net
<
cpp
|
text
|
text encoding
|
static
constexpr
bool
/*comp-name*/
(
std::
string_view
a,
std::
string_view
b
)
;
|
(seit C++26)
( Nur zur Darstellung* ) |
|
Vergleicht zwei Zeichenketten a und b , die in gewöhnlicher Literalkodierung gemäß den Unicode Charset Alias Matching -Regeln kodiert sind.
Zwei Zeichenketten werden als gleich betrachtet, wenn beim Vergleich von links nach rechts Folgendes zutrifft:
- Entfernen aller nicht-alphanumerischen Zeichen,
- Konvertieren aller Buchstaben in dieselbe Groß-/Kleinschreibung, und
- Entfernen aller eigenständigen Sequenzen von '0' Zeichen, die nicht unmittelbar auf einen numerischen Präfix folgen. Ein numerischer Präfix besteht aus einer Ziffer ungleich Null ( '1' bis '9' ), optional gefolgt von einem oder mehreren nicht-alphanumerischen Zeichen.
Hier sind die folgenden Beispiele:
static_assert(/*comp-name*/("UTF-8", "utf8") == true); static_assert(/*comp-name*/("u.t.f-008", "utf8") == true); static_assert(/*comp-name*/("ISO-8859-1", "iso88591") == true); static_assert(/*comp-name*/("ut8", "utf8") == false); static_assert(/*comp-name*/("utf-80", "utf8") == false);
Parameter
| a, b | - | zu vergleichende Zeichenketten |
Rückgabewert
true wenn zwei Zeichenketten wie oben beschrieben gleich sind; false andernfalls.