System::String klasse

String class

String class used across the library. Is a substitute for C# System.String when translating code. For optimization reasons, isn’t considered an Object subclass. This type should be allocated on stack and passed to functions by value or by reference. Never use System::SmartPtr class to manage objects of this type.

class String

Methoden

MethodeBeschrijving
ASPOSECPP_VALUE_TYPE_IMPLEMENTS_INTERFACES()String is een waardetype aan de C++‑kant dat impliciet (zonder overerving) enkele interfaces implementeert.
begin() constRetourneert een pointer naar het begin van de daadwerkelijke stringbuffer. Realloceert nooit iets. Garandeert niet dat de buffer null‑geëindigd is.
Clone() constMaakt een kopie van de huidige string.
static Compare(const String&, int, const String&, int, int, bool)Less-equal-greater vergelijkt twee substrings.
static Compare(const String&, int, const String&, int, int, bool, const SharedPtr<System::Globalization::CultureInfo>&)Less-equal-greater vergelijkt twee substrings.
static Compare(const String&, const String&, System::StringComparison)Less-equal-greater vergelijkt twee strings.
static Compare(const String&, int, const String&, int, int, System::StringComparison)Less-equal-greater vergelijkt twee strings.
static Compare(const String&, const String&, bool)Less-equal-greater vergelijkt twee strings.
static Compare(const String&, const String&, bool, const SharedPtr<System::Globalization::CultureInfo>&)Less-equal-greater vergelijkt twee strings.
static CompareOrdinal(const String&, const String&)Less-equal-greater vergelijkt twee strings met behulp van de ordinale modus.
static CompareOrdinal(const String&, int, const String&, int, int)Less-equal-greater vergelijkt twee strings met behulp van de ordinale modus.
CompareTo(const String&) constVergelijkt twee strings in ’less-equals-more’ stijl. Gebruikt de huidige cultuur.
static Concat(const ArrayPtr<String>&)Voegt strings samen.
static Concat(const String&, const String&)Voegt strings samen.
static Concat(const String&, const String&, const String&)Voegt strings samen.
static Concat(const String&, const String&, const String&, const String&)Voegt strings samen.
Contains(const String&) constControleert of str een substring is van de huidige string.
Contains(char16_t) constControleert of de string het opgegeven teken bevat.
static Copy(const String&)Maakt een stringkopie.
CopyTo(int, const ArrayPtr<char_t>&, int, int) constKopieert stringtekens naar bestaande array‑elementen. Er wordt niet herschaald.
end() constRetourneert een pointer naar het einde van de daadwerkelijke stringbuffer. Realloceert nooit iets. Garandeert niet dat de buffer null‑geëindigd is.
EndsWith(const String&) constControleert of de string eindigt op de opgegeven substring.
EndsWith(const String&, System::StringComparison) constControleert of de string eindigt op de opgegeven substring.
EndsWith(const String&, bool, const SharedPtr<System::Globalization::CultureInfo>&) constControleert of de string eindigt op de opgegeven substring.
Equals(const String&, System::StringComparison) constString gelijkheidsvergelijking. Verschillende modi die worden geleverd door de enumeratie StringComparison worden ondersteund.
Equals(const String&) constString gelijkheidsvergelijking. Gebruikt de vergelijkingsmodus System::StringComparison::Ordinal.
static Equals(const String&, const String&)Equal vergelijkt twee strings met de Ordial vergelijkingsmodus.
static Equals(const String&, const String&, System::StringComparison)Equal vergelijkt twee strings.
FastToAscii(char, int) constProbeert een String naar een ASCII‑string te converteren.
static Format(const SharedPtr<IFormatProvider>&, const String&, const Args&…)Formatteert string in C#‑stijl.
static Format(std::nullptr_t, const String&, const Args&…)Formatteert string in C#‑stijl.
static Format(std::nullptr_t, const char16_t(&), const Args&…)Formatteert string in C#‑stijl.
static Format(const String&, const Args&…)Formatteert string in C#‑stijl.
static Format(const String&, const System::ArrayPtr<T>&)Formatteert string in C#‑stijl.
static FromAscii(const char *)Maakt een String aan vanuit een ASCII‑string.
static FromAscii(const char *, int)Maakt een String aan vanuit een ASCII‑string.
static FromAscii(const std::string&)Maakt een String aan vanuit een ASCII‑string.
static FromUtf16(const std::u16string&)Maakt een String aan vanuit een UTF‑16‑string.
static FromUtf32(const uint32_t *, int32_t)Maakt een String aan vanuit een UTF‑32‑string.
static FromUtf8(const char *)Maakt een String aan vanuit een UTF‑8‑string.
static FromUtf8(const char *, int)Maakt een String aan vanuit een UTF‑8‑string.
static FromUtf8(const uint8_t *)Maakt een String aan vanuit een UTF‑8‑string.
static FromUtf8(const std::string&)Maakt een String aan vanuit een UTF‑8‑string.
static FromWCS(const std::wstring&)Maakt een String aan vanuit een wide‑string.
get_Length() constHaalt de lengte van de string op.
GetHashCode() constHasht de aanwezige string. Geïmplementeerd in ICU, komt niet overeen met hashes in C#.
IndexOf(const String&, System::StringComparison) constVoorwaartse zoekopdracht in substring.
IndexOf(char_t, int) constVoorwaartse zoekopdracht naar teken.
IndexOf(char_t, int, int) constVoorwaartse zoekopdracht naar teken in substring.
IndexOf(const String&, int) constVoorwaartse zoekopdracht in substring.
IndexOf(const String&, int, System::StringComparison) constVoorwaartse zoekopdracht in substring.
IndexOf(const String&, int, int, System::StringComparison) constVoorwaartse zoekopdracht in substring.
IndexOf(const String&, int, int) constVoorwaartse zoekopdracht in substring.
IndexOfAny(char_t, int) constVoorwaartse zoekopdracht naar teken.
IndexOfAny(const String&, int) constZoekt vervolgens naar alle tekens van str hierin. Als het eerste teken wordt gevonden, wordt de positie geretourneerd, anders wordt naar het tweede teken gezocht, enzovoort.
IndexOfAny(const ArrayPtr<char_t>&) constZoekt naar elk van de opgegeven tekens in de volledige string. Vergelijkt het eerste teken van de string met alle tekens in anyOf, vervolgens het tweede teken, enzovoort. Retourneert de index van het eerste teken dat overeenkomt met een van de doeltekens.
IndexOfAny(const ArrayPtr<char_t>&, int32_t) constZoekt naar elk van de opgegeven tekens in een substring. Vergelijkt het eerste teken van de string met alle tekens in anyOf, vervolgens het tweede teken, enzovoort. Retourneert de index van het eerste teken dat overeenkomt met een van de doeltekens.
IndexOfAny(const ArrayPtr<char_t>&, int32_t, int32_t) constZoekt naar elk van de opgegeven tekens in een substring. Vergelijkt het eerste teken van de string met alle tekens in anyOf, vervolgens het tweede teken, enzovoort. Retourneert de index van het eerste teken dat overeenkomt met een van de doeltekens.
Insert(int, const String&) constVoegt een substring in op de opgegeven positie.
Is(const System::TypeInfo&) constControleert of het string‑object van het type is dat is opgegeven door de meegegeven TypeInfo.
IsAsciiString() constGeeft aan of een String alleen ASCII‑symbolen bevat.
IsEmpty() constControleert of de string zowel niet‑null als leeg is.
IsNormalized(System::Text::NormalizationForm) constControleert of de Unicode‑string genormaliseerd is met de opgegeven normalisatie‑vorm.
IsNull() constControleert of de string als null wordt beschouwd. Een String is null alleen als deze is geconstrueerd via de String() constructor, verplaatst, gekopieerd of toegewezen van een null‑string, of als de reset()‑methode is aangeroepen.
IsNullOrEmpty() constControleert of de string leeg is of als null wordt beschouwd.
static IsNullOrEmpty(const String&)Controleert of de meegegeven string null of leeg is.
static IsNullOrWhiteSpace(const String&)Geeft aan of een opgegeven string null, leeg, of uitsluitend uit witruimte‑tekens bestaat.
static Join(const String&, const ArrayPtr<String>&, int, int)Voegt een array samen met een string als scheidingsteken.
static Join(const String&, const System::Details::ArrayView<String>&, int, int)Voegt een array samen met een string als scheidingsteken.
static Join(const String&, const SharedPtr<System::Collections::Generic::IEnumerable<String>>&)Voegt een array samen met een string als scheidingsteken.
static Join(const String&, const ArrayPtr<SharedPtr<Object>>&)Voegt een array samen met een string als scheidingsteken.
LastIndexOf(const String&, int) constSubstring achterwaartse zoekopdracht.
LastIndexOf(const String&, System::StringComparison) constSubstring achterwaartse zoekopdracht.
LastIndexOf(const String&, int, System::StringComparison) constSubstring achterwaartse zoekopdracht.
LastIndexOf(const String&, int, int, StringComparison) constSubstring achterwaartse zoekopdracht.
LastIndexOf(char_t) constKarakter achterwaartse zoekopdracht.
LastIndexOf(char_t, int32_t) constKarakter achterwaartse zoekopdracht.
LastIndexOf(char_t, int32_t, int32_t) constKarakter achterwaartse zoekopdracht.
LastIndexOfAny(const ArrayPtr<char_t>&) constZoekt naar elk van de meegegeven tekens door de hele string achterwaarts. Vergelijkt het laatste teken van de string met alle tekens in anyOf, vervolgens vergelijkt het het vorige teken enzovoort. Retourneert de index van de eerste gevonden overeenkomst.
LastIndexOfAny(const ArrayPtr<char_t>&, int32_t) constZoekt naar elk van de meegegeven tekens door de substring achterwaarts. Vergelijkt het laatste teken van de string met alle tekens in anyOf, vervolgens vergelijkt het het vorige teken enzovoort. Retourneert de index van de eerste gevonden overeenkomst.
LastIndexOfAny(const ArrayPtr<char_t>&, int32_t, int32_t) constZoekt naar elk van de meegegeven tekens door de substring achterwaarts. Vergelijkt het laatste teken van de string met alle tekens in anyOf, vervolgens vergelijkt het het vorige teken enzovoort. Retourneert de index van de eerste gevonden overeenkomst.
Normalize(System::Text::NormalizationForm) constNormaliseert unicode-string met behulp van de opgegeven normalisatievorm.
operator!=(const String&) constNiet-gelijkheidsvergelijkingsoperator.
operator!=(std::nullptr_t) constControleert of de string niet null is. Past dezelfde logica toe als de aanroep van IsNull().
operator+(const String&) constString concatenatie-operator.
operator+(const T&) constString concatenatie met stringliteral of karakterreeks-pointer.
operator+(char_t) constVoegt een teken toe aan het einde van de string.
operator+(int) constVoegt de tekenreeksrepresentatie van een geheel getal toe aan het einde van de string.
operator+(uint32_t) constVoegt de tekenreeksrepresentatie van een ongetekend geheel getal toe aan het einde van de string.
operator+(double) constVoegt de tekenreeksrepresentatie van een zwevendekommagetal toe aan het einde van de string.
operator+(int64_t) constVoegt de tekenreeksrepresentatie van een geheel getal toe aan het einde van de string.
operator+(const T&) constVoegt de tekenreeksrepresentatie van een referentietype-object toe aan het einde van de string.
operator+(const T&) constVoegt de tekenreeksrepresentatie van een referentietype-object toe aan het einde van de string.
operator+(T) constVoegt de tekenreeksrepresentatie van een booleaanse waarde toe aan het einde van de string.
operator+=(char_t)Concatenatie-toewijzingsoperator.
operator+=(const String&)Concatenatie-toewijzingsoperator.
operator+=(double)Concatenatie-toewijzingsoperator.
operator+=(uint8_t)Concatenatie-toewijzingsoperator.
operator+=(int16_t)Concatenatie-toewijzingsoperator.
operator+=(uint16_t)Concatenatie-toewijzingsoperator.
operator+=(int32_t)Concatenatie-toewijzingsoperator.
operator+=(uint32_t)Concatenatie-toewijzingsoperator.
operator+=(int64_t)Concatenatie-toewijzingsoperator.
operator+=(uint64_t)Concatenatie-toewijzingsoperator.
operator+=(T)Concatenatie-toewijzingsoperator.
operator<(const String&) constVergelijkt strings op volgorde.
operator=(const String&)Toewijzingsoperator.
operator=(String&&)Verplaatsings-toewijzingsoperator.
operator==(const String&) constGelijkheidsvergelijkingsoperator.
operator==(std::nullptr_t) constControleert of de string null is. Past dezelfde logica toe als de aanroep van IsNull().
operator>(const String&) constVergelijkt strings op volgorde.
operator[](int) constHaalt het teken op op de opgegeven positie.
PadLeft(int, char_t) constVoegt opvulling toe aan de linkerkant van de oorspronkelijke string.
PadRight(int, char_t) constVoegt opvulling toe aan de rechterkant van de oorspronkelijke string.
rbegin() constRetourneert een reverse-iterator naar het laatste teken (indien aanwezig) van de werkelijke stringbuffer.
Remove(int32_t, int32_t) constExtraheert alles behalve de subreeks uit de huidige tekenreeks.
rend() constRetourneert een reverse-iterator naar vóór het eerste teken (indien aanwezig) van de daadwerkelijke tekenreeksbuffer.
Replace(char_t, char_t) constVervangt alle voorkomens van het teken in de tekenreeks.
Replace(const String&, const String&) constVervangt alle voorkomens van lookup in deze tekenreeks.
reset()Stelt de tekenreeks in op null. Is analoog aan ‘string_variable_name = null’ in C#.
SetCharAt(int, char_t)Stelt het teken in op de opgegeven positie.
Split(char_t, StringSplitOptions) constSplitst de tekenreeks op teken.
Split(char_t, int32_t, StringSplitOptions) constSplitst de tekenreeks op teken.
Split(char_t, char_t, StringSplitOptions) constSplitst de tekenreeks op een van twee tekens.
Split(const ArrayPtr<char_t>&, StringSplitOptions) constSplitst de tekenreeks op een van de opgegeven tekens.
Split(const ArrayPtr<char_t>&, int32_t, StringSplitOptions) constSplitst de tekenreeks op een van de opgegeven tekens.
Split(const String&, StringSplitOptions) constSplitst de tekenreeks op subreeks.
Split(const String&, int, StringSplitOptions) constSplitst de tekenreeks op subreeks.
Split(const ArrayPtr<String>&, StringSplitOptions) constSplitst de tekenreeks op subreeks.
Split(const ArrayPtr<String>&, int, StringSplitOptions) constSplitst de tekenreeks op subreeks. Momenteel ondersteunt het alleen een scheidingstekenarray van nul of één element.
StartsWith(const String&) constControleert of de tekenreeks begint met de opgegeven subreeks.
StartsWith(const String&, System::StringComparison) constControleert of de tekenreeks begint met de opgegeven subreeks.
StartsWith(const String&, bool, const SharedPtr<System::Globalization::CultureInfo>&) constControleert of de tekenreeks begint met de opgegeven subreeks.
String()Standaardconstructor. Maakt een tekenreeksobject dat als null wordt beschouwd.
String(T&, typename std::enable_if<IsStringLiteral<T, char16_t>::value>::type *)Construeert een tekenreeks op basis van een tekenreeksliteral. Beschouwt de literal als een null-terminerende tekenreeks en berekent de doeltekenreekslengte op basis van de grootte van de literal.
String(const T&, typename std::enable_if<IsStringPointer<T, char16_t>::value>::type *)Construeert een tekenreeks op basis van een tekenreeks-pointer. Beschouwt de aangewezen tekenreeks als null-terminerend en berekent de doeltekenreekslengte op basis van het null-teken.
explicit String(T&, typename std::enable_if<IsStringLiteral<T, char>::value>::type *)Construeert een tekenreeks op basis van een tekenreeksliteral. Beschouwt de literal als een null-terminerende tekenreeks in UTF8 en berekent de doeltekenreekslengte op basis van de grootte van de literal.
explicit String(const T&, typename std::enable_if<IsStringPointer<T, char>::value>::type *)Construeert een tekenreeks op basis van een tekenreeks-pointer. Beschouwt de aangewezen tekenreeks als null-terminerend in UTF8 en berekent de doeltekenreekslengte op basis van het null-teken.
String(const char16_t *, int)Construeert een tekenreeks vanuit een tekenreeks-pointer en een expliciete lengte.
String(const char *, int)Construeert een tekenreeks vanuit een tekenreeks-pointer en een expliciete lengte.
String(const char16_t *, int, int)Construeert een tekenreeks vanuit een tekenreeks-pointer vanaf de startpositie met behulp van een lengte.
explicit String(const char16_t, int)Vulconstructor.
String(const T&, typename std::enable_if<std::is_same<T, std::nullptr_t>::value>::type *)Nullptr-constructor. Gedefinieerd als sjabloon om prioriteiten met andere sjabloonconstructors op te lossen.
explicit String(T&, typename std::enable_if<IsStringLiteral<T, wchar_t>::value>::type *)Construeert een tekenreeks op basis van een widestring-literal. Beschouwt de literal als een null-terminerende tekenreeks en berekent de doeltekenreekslengte op basis van de grootte van de literal. Conversie van wchar_t is tijdrovend op sommige platforms, dus impliciete conversies zijn niet toegestaan.
explicit String(const T&, typename std::enable_if<IsStringPointer<T, wchar_t>::value>::type *)Construeert een tekenreeks op basis van een widecharacter-pointer. Beschouwt de aangewezen tekenreeks als null-terminerend en berekent de doeltekenreekslengte op basis van het null-teken. Conversie van wchar_t is tijdrovend op sommige platforms, dus impliciete conversies zijn niet toegestaan.
explicit String(const wchar_t *, int)Construeert een tekenreeks vanuit een widecharacter-pointer en een expliciete lengte. Conversie van wchar_t is tijdrovend op sommige platforms, dus impliciete conversies zijn niet toegestaan.
explicit String(const wchar_t, int)Vulconstructor. Conversie van wchar_t is tijdrovend op sommige platforms, dus impliciete conversies zijn niet toegestaan.
String(const String&)Copy-constructor.
String(String&&)Move-constructor.
String(const ArrayPtr<char16_t>&)Converteert een volledige tekenarray naar een string.
String(const ArrayPtr<char16_t>&, int, int)Converteert een subbereik van een tekenarray naar een string. Als parameters buiten de arraygrenzen vallen, wordt een lege string geconstrueerd.
explicit String(const codeporting_icu::UnicodeString&)Verpakt UnicodeString in String.
explicit String(codeporting_icu::UnicodeString&&)Move-constructor.
explicit String(const std::wstring&)Maakt een String aan vanuit een wide‑string.
explicit String(const std::u16string&)Maakt een String aan vanuit een UTF‑16‑string.
explicit String(const std::string&)Maakt een String van een std::string die in UTF-8-indeling wordt gepresenteerd.
explicit String(const std::u32string&)Maakt een String van een std::u32string.
Substring(int32_t) constExtraheert een substring.
Substring(int32_t, int32_t) constExtraheert een substring.
ToAsciiString() constConverteert een string naar std::string. Gebruikt ASCII-codering.
ToByteArray(int32_t, int32_t, bool) constConverteert een string of substring naar een array van bytes.
ToCharArray(int32_t, int32_t) constConverteert een string of substring naar een array van tekens.
ToLower() constConverteert alle tekens van de string naar kleine letters.
ToLower(const SharedPtr<System::Globalization::CultureInfo>&) constConverteert alle tekens van de string naar kleine letters met behulp van een specifieke cultuur.
ToLowerInvariant() constConverteert alle tekens van de string naar kleine letters met behulp van een ongewijzigde cultuur.
ToString() constWrapper voor het afhandelen van de String-klasse in contexten waarin ToString() wordt aangeroepen op waarde-typen.
ToString(const SharedPtr<IFormatProvider>&) constWrapper voor het afhandelen van de String-klasse in contexten waarin ToString() wordt aangeroepen op waarde-typen.
ToU16Str() constConverteert een string naar std::u16string.
ToU32Str() constConverteert een string naar std::u32string.
ToUpper() constConverteert alle tekens van de string naar hoofdletters.
ToUpper(const SharedPtr<System::Globalization::CultureInfo>&) constConverteert alle tekens van de string naar hoofdletters met behulp van een specifieke cultuur.
ToUpperInvariant() constConverteert alle tekens van de string naar hoofdletters met behulp van een ongewijzigde cultuur.
ToUtf8String() constConverteert een string naar std::string. Gebruikt UTF-8-codering.
ToWCS() constConverteert een string naar std::wstring.
Trim() constVerwijdert alle witruimte‑tekens zowel aan het begin als aan het einde van de string.
Trim(char_t) constVerwijdert alle voorkomens van het opgegeven teken zowel aan het begin als aan het einde van de string.
Trim(const String&) constVerwijdert alle voorkomens van de opgegeven tekens zowel aan het begin als aan het einde van de string.
Trim(const ArrayPtr<char_t>&) constVerwijdert alle voorkomens van de opgegeven tekens zowel aan het begin als aan het einde van de string.
TrimEnd() constVerwijdert alle witruimte‑tekens aan het einde van de string.
TrimEnd(char_t) constVerwijdert alle voorkomens van het opgegeven teken aan het einde van de string.
TrimEnd(const String&) constVerwijdert alle voorkomens van meegegeven tekens van het einde van de string.
TrimEnd(const ArrayPtr<char_t>&) constVerwijdert alle voorkomens van meegegeven tekens van het einde van de string.
TrimStart() constVerwijdert alle witruimte‑tekens van het begin van de string.
TrimStart(char_t) constVerwijdert alle voorkomens van het meegegeven teken van het begin van de string.
TrimStart(const String&) constVerwijdert alle voorkomens van meegegeven tekens van het begin van de string.
TrimStart(const ArrayPtr<char_t>&) constVerwijdert alle voorkomens van meegegeven tekens van het begin van de string.
u_str() constRetourneert een ICU‑stijl null‑geterminateerde buffer. Kan de string opnieuw toewijzen.
~String()Destructor.

Velden

VeldBeschrijving
static EmptyLege string.
static NullNull‑string.

Typedefs

TypedefBeschrijving
reverse_iteratorReverse-iterator type.

Opmerkingen

#include "system/string.h"
#include <iostream>

int main()
{
  // Construeer een string uit de array van tekens en druk deze af.
  const auto chars = {u'h', u'e', u'l', u'l', u'o'};
  const System::String string1(chars);
  std::cout << string1 << std::endl;

  // Construeer een string uit de array van bytes en druk deze af.
  const uint8_t bytes[] = {0x77, 0x6f, 0x72, 0x6c, 0x64, 0x0};
  const auto string2 = System::String::FromUtf8(bytes);
  std::cout << string2 << std::endl;

  // Trim de onderstaande string en druk deze af.
  const System::String string3(u"   This string contains whitespaces in the beginning and at the end.   ");
  std::cout << '"' << string3.Trim() << '"' << std::endl;

  // Druk het aantal woorden af in de .
  std::cout << "Number of words: " << string3.Trim().Split(' ')->get_Length() << std::endl;

  return 0;
}
/*
This code example produces the following output:
hello
world
"This string contains whitespaces in the beginning and at the end."
Number of words: 11
*/

Zie ook