QStringView Class

Die Klasse QStringView bietet eine einheitliche Sicht auf UTF-16-Strings mit einer schreibgeschützten Teilmenge der QString API. Mehr...

Kopfzeile: #include <QStringView>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core

Hinweis: Alle Funktionen in dieser Klasse sind reentrant.

Öffentliche Typen

Öffentliche Funktionen

QStringView()
QStringView(const Char (&)[N] string)
QStringView(const Char *str)
QStringView(const Container &str)
QStringView(const QString &str)
QStringView(std::nullptr_t)
QStringView(const Char *first, const Char *last)
QStringView(const Char *str, qsizetype len)
QString arg(Args &&... args) const
QChar at(qsizetype n) const
QChar back() const
QStringView::const_iterator begin() const
QStringView::const_iterator cbegin() const
QStringView::const_iterator cend() const
void chop(qsizetype length)
QStringView chopped(qsizetype length) const
int compare(QChar ch) const
int compare(QChar ch, Qt::CaseSensitivity cs) const
int compare(QLatin1StringView l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int compare(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
(since 6.5) int compare(QUtf8StringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
(since 6.1) QStringView::const_iterator constBegin() const
(since 6.0) QStringView::const_pointer constData() const
(since 6.1) QStringView::const_iterator constEnd() const
bool contains(QChar c, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool contains(QLatin1StringView l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool contains(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
(since 6.1) bool contains(const QRegularExpression &re, QRegularExpressionMatch *rmatch = nullptr) const
(since 6.1) qsizetype count(const QRegularExpression &re) const
(since 6.0) qsizetype count(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
(since 6.4) qsizetype count(QLatin1StringView l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
(since 6.0) qsizetype count(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
QStringView::const_reverse_iterator crbegin() const
QStringView::const_reverse_iterator crend() const
QStringView::const_pointer data() const
bool empty() const
QStringView::const_iterator end() const
bool endsWith(QChar ch) const
bool endsWith(QChar ch, Qt::CaseSensitivity cs) const
bool endsWith(QLatin1StringView l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool endsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
QChar first() const
(since 6.0) QStringView first(qsizetype n) const
QChar front() const
qsizetype indexOf(QChar c, qsizetype from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
qsizetype indexOf(QLatin1StringView l1, qsizetype from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
qsizetype indexOf(QStringView str, qsizetype from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
(since 6.1) qsizetype indexOf(const QRegularExpression &re, qsizetype from = 0, QRegularExpressionMatch *rmatch = nullptr) const
bool isEmpty() const
(since 6.7) bool isLower() const
bool isNull() const
bool isRightToLeft() const
(since 6.7) bool isUpper() const
bool isValidUtf16() const
QChar last() const
(since 6.0) QStringView last(qsizetype n) const
(since 6.2) qsizetype lastIndexOf(const QRegularExpression &re, QRegularExpressionMatch *rmatch = nullptr) const
qsizetype lastIndexOf(QChar c, qsizetype from, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
qsizetype lastIndexOf(QLatin1StringView l1, qsizetype from, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
qsizetype lastIndexOf(QStringView str, qsizetype from, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
(since 6.1) qsizetype lastIndexOf(const QRegularExpression &re, qsizetype from, QRegularExpressionMatch *rmatch = nullptr) const
(since 6.3) qsizetype lastIndexOf(QChar c, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
(since 6.2) qsizetype lastIndexOf(QLatin1StringView l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
(since 6.2) qsizetype lastIndexOf(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
qsizetype length() const
(since 6.4) int localeAwareCompare(QStringView other) const
(since 6.8) qsizetype max_size() const
QStringView::const_reverse_iterator rbegin() const
QStringView::const_reverse_iterator rend() const
qsizetype size() const
(since 6.8) QStringView &slice(qsizetype pos, qsizetype n)
(since 6.8) QStringView &slice(qsizetype pos)
(since 6.0) QStringView sliced(qsizetype pos, qsizetype n) const
(since 6.0) QStringView sliced(qsizetype pos) const
(since 6.0) QList<QStringView> split(QChar sep, Qt::SplitBehavior behavior = Qt::KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
(since 6.0) QList<QStringView> split(QStringView sep, Qt::SplitBehavior behavior = Qt::KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
(since 6.0) QList<QStringView> split(const QRegularExpression &re, Qt::SplitBehavior behavior = Qt::KeepEmptyParts) const
bool startsWith(QChar ch) const
bool startsWith(QChar ch, Qt::CaseSensitivity cs) const
bool startsWith(QLatin1StringView l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool startsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
(since 6.0) CFStringRef toCFString() const
(since 6.0) double toDouble(bool *ok = nullptr) const
(since 6.0) float toFloat(bool *ok = nullptr) const
(since 6.0) int toInt(bool *ok = nullptr, int base = 10) const
QByteArray toLatin1() const
QByteArray toLocal8Bit() const
(since 6.0) long toLong(bool *ok = nullptr, int base = 10) const
(since 6.0) qlonglong toLongLong(bool *ok = nullptr, int base = 10) const
(since 6.0) NSString *toNSString() const
(since 6.0) short toShort(bool *ok = nullptr, int base = 10) const
QString toString() const
(since 6.0) uint toUInt(bool *ok = nullptr, int base = 10) const
(since 6.0) ulong toULong(bool *ok = nullptr, int base = 10) const
(since 6.0) qulonglong toULongLong(bool *ok = nullptr, int base = 10) const
(since 6.0) ushort toUShort(bool *ok = nullptr, int base = 10) const
QList<uint> toUcs4() const
QByteArray toUtf8() const
qsizetype toWCharArray(wchar_t *array) const
(since 6.0) auto tokenize(Needle &&sep, Flags... flags) const
QStringView trimmed() const
void truncate(qsizetype length)
const QStringView::storage_type *utf16() const
(since 6.7) std::u16string_view operator std::u16string_view() const
QChar operator[](qsizetype n) const

Statische öffentliche Mitglieder

QStringView fromArray(const Char (&)[Size] string)
(since 6.8) qsizetype maxSize()
size_t qHash(QStringView key, size_t seed = 0)
bool operator!=(const QStringView &lhs, const QStringView &rhs)
bool operator<(const QStringView &lhs, const QStringView &rhs)
bool operator<=(const QStringView &lhs, const QStringView &rhs)
bool operator==(const QStringView &lhs, const QStringView &rhs)
bool operator>(const QStringView &lhs, const QStringView &rhs)
bool operator>=(const QStringView &lhs, const QStringView &rhs)

Detaillierte Beschreibung

Eine QStringView referenziert einen zusammenhängenden Teil eines UTF-16 Strings, den sie nicht besitzt. Er fungiert als Schnittstellentyp für alle Arten von UTF-16-Strings, ohne dass zuerst ein QString konstruiert werden muss.

Der UTF-16-String kann als Array (oder eine Array-kompatible Datenstruktur wie QString, std::basic_string, etc.) von QChar, ushort, char16_t oder (auf Plattformen wie Windows, wo es sich um einen 16-Bit-Typ handelt) wchar_t dargestellt werden.

QStringView ist als Schnittstellentyp konzipiert; sein Hauptanwendungsfall ist die Verwendung als Funktionsparametertyp. Wenn QStringViews als automatische Variablen oder Datenelemente verwendet werden, muss darauf geachtet werden, dass die referenzierten String-Daten (z. B. im Besitz einer QString) die QStringView auf allen Codepfaden überdauern, damit die String-Ansicht nicht am Ende auf gelöschte Daten verweist.

Wenn QStringView als Schnittstellentyp verwendet wird, kann eine einzelne Funktion eine Vielzahl von UTF-16-String-Datenquellen akzeptieren. Eine Funktion, die QStringView akzeptiert, ersetzt somit drei Funktionsüberladungen (mit QString und (const QChar*, qsizetype)), während gleichzeitig noch mehr String-Datenquellen an die Funktion übergeben werden können, wie z. B. u"Hello World", ein char16_t String-Literal.

QStringViews sollten als Wert übergeben werden, nicht als Referenz-zu-Konst:

    void myfun1(QStringView sv);        // preferred
    void myfun2(const QStringView &sv); // compiles and works, but slower

Wenn Sie Ihren Benutzern die maximale Freiheit geben wollen, welche Strings sie an Ihre Funktion übergeben können, begleiten Sie die QStringView Überladung mit Überladungen für

  • QChar: diese Überladung kann an die QStringView-Version delegieren:
        void fun(QChar ch) { fun(QStringView(&ch, 1)); }

    obwohl QStringView aus technischen Gründen selbst keinen QChar Konstruktor zur Verfügung stellen kann.

  • QString: wenn Sie eine unveränderte Kopie der Zeichenkette speichern und somit die Vorteile von QString nutzen möchten, die sich aus dem impliziten Teilen ergeben.
  • QLatin1StringViewQStringView: wenn Sie die Funktion implementieren können, ohne die QLatin1StringView zuerst in UTF-16 zu konvertieren; Benutzer erwarten, dass eine auf QLatin1StringView überladene Funktion deutlich weniger Speicherzuweisungen vornimmt als der semantisch äquivalente Aufruf der QStringView-Version, der die Konstruktion einer QString aus der QLatin1StringView beinhaltet.

QStringView kann auch als Rückgabewert einer Funktion verwendet werden. Wenn Sie eine Funktion aufrufen, die QStringView zurückgibt, achten Sie besonders darauf, dass Sie QStringView nicht länger als die Funktion verspricht, um die referenzierten Zeichenkettendaten am Leben zu erhalten, verwenden. Im Zweifelsfall erhalten Sie eine starke Referenz auf die Daten, indem Sie toString() aufrufen, um die QStringView in eine QString zu konvertieren.

QStringView ist ein Literal Type, aber da es Daten als char16_t speichert, ist Iteration nicht constexpr (casts von const char16_t* nach const QChar*, was in constexpr Funktionen nicht erlaubt ist). Sie können stattdessen eine indizierte Schleife und/oder utf16() in constexpr Kontexten verwenden.

Siehe auch QString.

Dokumentation der Mitgliedstypen

QStringView::const_iterator

Dieses Typedef bietet einen STL-ähnlichen Konst-Iterator für QStringView.

Siehe auch iterator und const_reverse_iterator.

QStringView::const_pointer

Alias für value_type *. Wird aus Gründen der Kompatibilität mit der STL bereitgestellt.

QStringView::const_reference

Alias für value_type &. Wird aus Gründen der Kompatibilität mit der STL bereitgestellt.

QStringView::const_reverse_iterator

Dieses Typedef bietet einen STL-ähnlichen const Reverse-Iterator für QStringView.

Siehe auch reverse_iterator und const_iterator.

QStringView::difference_type

Alias für std::ptrdiff_t. Wird aus Gründen der Kompatibilität mit der STL bereitgestellt.

QStringView::iterator

Dieses Typedef bietet einen STL-ähnlichen konstanten Iterator für QStringView.

QStringView unterstützt keine veränderlichen Iteratoren, daher ist dies dasselbe wie const_iterator.

Siehe auch const_iterator und reverse_iterator.

QStringView::pointer

Alias für value_type *. Wird aus Kompatibilitätsgründen mit der STL bereitgestellt.

QStringView unterstützt keine veränderlichen Zeiger, daher ist dies dasselbe wie const_pointer.

QStringView::reference

Alias für value_type &. Wird aus Kompatibilitätsgründen mit der STL bereitgestellt.

QStringView unterstützt keine veränderbaren Referenzen, daher ist dies dasselbe wie const_reference.

QStringView::reverse_iterator

Dieses Typedef bietet einen STL-ähnlichen const Reverse-Iterator für QStringView.

QStringView unterstützt keine veränderbaren Reverse-Iteratoren, so dass dies dasselbe ist wie const_reverse_iterator.

Siehe auch const_reverse_iterator und iterator.

QStringView::size_type

Alias für qsizetype. Wird aus Kompatibilitätsgründen mit der STL bereitgestellt.

QStringView::storage_type

Alias für char16_t.

QStringView::value_type

Alias für const QChar. Wird aus Kompatibilitätsgründen mit der STL bereitgestellt.

Dokumentation der Mitgliedsfunktionen

[since 6.0] QList<QStringView> QStringView::split(QChar sep, Qt::SplitBehavior behavior = Qt::KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

[since 6.0] QList<QStringView> QStringView::split(QStringView sep, Qt::SplitBehavior behavior = Qt::KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Teilt die Ansicht in Teilstring-Ansichten auf, wo immer sep vorkommt, und gibt die Liste dieser String-Ansichten zurück.

Siehe QString::split(), um zu erfahren, wie sep, behavior und cs zusammenwirken, um das Ergebnis zu bilden.

Hinweis: Alle zurückgegebenen Ansichten sind gültig, solange die Daten, auf die diese Zeichenkettenansicht verweist, gültig sind. Das Zerstören der Daten führt dazu, dass alle Ansichten nicht mehr gültig sind.

Diese Funktion wurde in Qt 6.0 eingeführt.

template <typename... Args> QString QStringView::arg(Args &&... args) const

Ersetzt alle Vorkommen von %N in dieser Zeichenfolge durch das entsprechende Argument aus args. Die Argumente sind nicht positionell: das erste der args ersetzt das %N durch das niedrigste N (alle), das zweite der args das %N durch das nächstniedrigere N usw.

Args kann aus allem bestehen, was sich implizit in QString, QStringView oder QLatin1StringView umwandeln lässt.

Darüber hinaus werden auch die folgenden Typen unterstützt: QChar, QLatin1Char.

Siehe auch QString::arg().

[constexpr noexcept] int QStringView::compare(QChar ch) const

[noexcept] int QStringView::compare(QChar ch, Qt::CaseSensitivity cs) const

[noexcept] int QStringView::compare(QLatin1StringView l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Vergleicht diese Zeichenfolgenansicht mit der Latin-1-Zeichenfolgenansicht l1 oder dem Zeichen ch. Gibt eine negative Ganzzahl zurück, wenn diese Zeichenfolgenansicht kleiner als l1 oder ch ist, eine positive Ganzzahl, wenn sie größer als l1 oder ch ist, und Null, wenn sie gleich sind.

Wenn cs gleich Qt::CaseSensitive ist (Standardeinstellung), wird zwischen Groß- und Kleinschreibung unterschieden; andernfalls wird die Groß- und Kleinschreibung nicht berücksichtigt.

Siehe auch operator==(), operator<(), und operator>().

[noexcept] bool QStringView::startsWith(QChar ch) const

[noexcept] bool QStringView::startsWith(QChar ch, Qt::CaseSensitivity cs) const

[noexcept] bool QStringView::startsWith(QLatin1StringView l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

[noexcept] bool QStringView::startsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Gibt true zurück, wenn diese Zeichenkettenansicht mit der UTF-16-Zeichenkette von str, der Latin-1-Zeichenkette von l1 bzw. dem Zeichen ch beginnt; andernfalls wird false zurückgegeben.

Wenn cs gleich Qt::CaseSensitive ist (Standardeinstellung), wird zwischen Groß- und Kleinschreibung unterschieden; andernfalls wird die Groß- und Kleinschreibung nicht berücksichtigt.

Siehe auch endsWith().

[noexcept] bool QStringView::endsWith(QChar ch) const

[noexcept] bool QStringView::endsWith(QChar ch, Qt::CaseSensitivity cs) const

[noexcept] bool QStringView::endsWith(QLatin1StringView l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

[noexcept] bool QStringView::endsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Gibt true zurück, wenn diese Zeichenkettenansicht mit der UTF-16-Zeichenkette von str, der Latin-1-Zeichenkette von l1 bzw. dem Zeichen ch endet; andernfalls wird false zurückgegeben.

Wenn cs Qt::CaseSensitive ist (Standardeinstellung), wird zwischen Groß- und Kleinschreibung unterschieden; andernfalls wird die Groß- und Kleinschreibung nicht berücksichtigt.

Siehe auch startsWith().

[noexcept] qsizetype QStringView::indexOf(QChar c, qsizetype from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

[noexcept] qsizetype QStringView::indexOf(QLatin1StringView l1, qsizetype from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

[noexcept] qsizetype QStringView::indexOf(QStringView str, qsizetype from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Gibt die Indexposition des ersten Vorkommens der UTF-16-Zeichenkette von str, der Latin-1-Zeichenkette von l1 bzw. des Zeichens ch in dieser Zeichenkettenansicht zurück, wobei ab der Indexposition from vorwärts gesucht wird. Gibt -1 zurück, wenn str, l1 bzw. ch nicht gefunden wird.

Wenn cs gleich Qt::CaseSensitive ist (Standardeinstellung), wird zwischen Groß- und Kleinschreibung unterschieden; andernfalls wird die Groß- und Kleinschreibung nicht berücksichtigt.

Wenn from den Wert -1 hat, beginnt die Suche beim letzten Zeichen, bei -2 beim vorletzten Zeichen und so weiter.

Siehe auch QString::indexOf().

[noexcept] bool QStringView::contains(QChar c, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

[noexcept] bool QStringView::contains(QLatin1StringView l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

[noexcept] bool QStringView::contains(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Gibt true zurück, wenn diese Zeichenkettenansicht ein Vorkommen der UTF-16-Zeichenkette von str, der Latin-1-Zeichenkette von l1 bzw. des Zeichens ch enthält; andernfalls wird false zurückgegeben.

Wenn cs Qt::CaseSensitive ist (Standardeinstellung), wird zwischen Groß- und Kleinschreibung unterschieden; andernfalls wird die Groß- und Kleinschreibung nicht berücksichtigt.

Siehe auch indexOf().

[noexcept] qsizetype QStringView::lastIndexOf(QChar c, qsizetype from, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

[noexcept] qsizetype QStringView::lastIndexOf(QLatin1StringView l1, qsizetype from, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

[noexcept] qsizetype QStringView::lastIndexOf(QStringView str, qsizetype from, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Gibt die Indexposition des letzten Vorkommens der UTF-16-Zeichenkette von str, der Latin-1-Zeichenkette von l1 bzw. des Zeichens ch in dieser Zeichenkettenansicht zurück, wobei ab der Indexposition from rückwärts gesucht wird.

Ist from gleich -1, beginnt die Suche beim letzten Zeichen; ist sie gleich -2, beim vorletzten Zeichen usw.

Gibt -1 zurück, wenn str, l1 bzw. c nicht gefunden wird.

Wenn cs gleich Qt::CaseSensitive ist (Standardeinstellung), wird zwischen Groß- und Kleinschreibung unterschieden; andernfalls wird die Groß- und Kleinschreibung nicht berücksichtigt.

Hinweis: Bei der Suche nach einem str oder l1 mit der Länge 0 wird die Übereinstimmung am Ende der Daten durch ein negatives from von der Suche ausgeschlossen, obwohl -1 normalerweise als Suche vom Ende der Zeichenkettenansicht her gedacht ist: Die Übereinstimmung am Ende liegt nach dem letzten Zeichen und wird daher ausgeschlossen. Um eine solche letzte leere Übereinstimmung einzuschließen, geben Sie entweder einen positiven Wert für from an oder lassen Sie den Parameter from ganz weg.

Siehe auch QString::lastIndexOf().

[noexcept, since 6.2] qsizetype QStringView::lastIndexOf(QLatin1StringView l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

[noexcept, since 6.2] qsizetype QStringView::lastIndexOf(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Diese Funktion überlastet lastIndexOf().

Gibt die Indexposition des letzten Vorkommens der UTF-16-Zeichenkette von str bzw. der Latin-1-Zeichenkette von l1 in dieser Zeichenkettenansicht zurück, beginnend mit dem letzten Zeichen dieser Zeichenkettenansicht. Gibt -1 zurück, wenn str bzw. l1 nicht gefunden wird.

Wenn cs gleich Qt::CaseSensitive ist (die Vorgabe), wird zwischen Groß- und Kleinschreibung unterschieden; andernfalls wird die Groß- und Kleinschreibung nicht berücksichtigt.

Diese Funktion wurde in Qt 6.2 eingeführt.

Siehe auch QString::lastIndexOf().

[constexpr noexcept(...), since 6.0] template <typename Needle, typename... Flags> auto QStringView::tokenize(Needle &&sep, Flags... flags) const

Teilt die Zeichenkette an allen Stellen, an denen sep vorkommt, in Teilzeichenketten auf und gibt eine "Lazy Sequence" dieser Zeichenketten zurück.

Äquivalent zu

return QStringTokenizer{std::forward<Needle>(sep), flags...};

mit dem Unterschied, dass es ohne die im Compiler aktivierte C++17 Class Template Argument Deduction (CTAD) funktioniert.

Siehe QStringTokenizer, um zu erfahren, wie sep und flags zusammenwirken, um das Ergebnis zu bilden.

Hinweis: Obwohl diese Funktion QStringTokenizer zurückgibt, sollten Sie ihre Template-Argumente niemals explizit benennen. Wenn Sie C++17 Class Template Argument Deduction (CTAD) verwenden können, können Sie

QStringTokenizer result = sv.tokenize(sep);

(ohne Schablonenargumente) schreiben. Wenn Sie C++17 CTAD nicht verwenden können, dürfen Sie den Rückgabewert nur in auto Variablen speichern:

auto result = sv.tokenize(sep);

Das liegt daran, dass die Template-Argumente von QStringTokenizer eine sehr subtile Abhängigkeit von der spezifischen tokenize()-Überladung haben, von der sie zurückgegeben werden, und sie entsprechen normalerweise nicht dem Typ, der für das Trennzeichen verwendet wird.

Diese Funktion wurde in Qt 6.0 eingeführt.

Hinweis: Diese Funktion ist noexcept, wenn noexcept(qTokenize(std::declval<const QStringView&>(), std::forward<Needle>(needle), flags...)) true ist.

Siehe auch QStringTokenizer und qTokenize().

[constexpr noexcept] QStringView::QStringView()

Konstruiert eine Null-String-Ansicht.

Siehe auch isNull().

[constexpr noexcept] template <typename Char, size_t N> QStringView::QStringView(const Char (&)[N] string)

Konstruiert eine Zeichenkettenansicht für das Zeichenfolgenliteral string. Die Ansicht deckt das Array ab, bis das erste Char(0) gefunden wird, oder N, je nachdem, was zuerst eintritt. Wenn Sie das gesamte Array benötigen, verwenden Sie stattdessen fromArray().

string muss für die Lebensdauer dieses String-View-Objekts gültig bleiben.

Dieser Konstruktor nimmt nur an der Überlastauflösung teil, wenn Char ein kompatibler Zeichentyp ist. Die kompatiblen Zeichentypen sind: QChar, ushort, char16_t und (auf Plattformen wie Windows, wo es ein 16-Bit-Typ ist) wchar_t.

Siehe auch fromArray.

[constexpr noexcept] template <typename Char> QStringView::QStringView(const Char *str)

Konstruiert eine String-Ansicht auf str. Die Länge wird durch die Suche nach dem ersten Char(0) bestimmt.

str muss während der gesamten Lebensdauer dieses Objekts gültig bleiben.

Die Übergabe von nullptr als str ist sicher und führt zu einer Null-String-Ansicht.

Dieser Konstruktor nimmt nur an der Überlastauflösung teil, wenn Char ein kompatibler Zeichentyp ist. Die kompatiblen Zeichentypen sind: QChar, ushort, char16_t und (auf Plattformen wie Windows, wo es sich um einen 16-Bit-Typ handelt) wchar_t.

[constexpr noexcept] template <typename Container, QStringView::if_compatible_container<Container> = true> QStringView::QStringView(const Container &str)

Konstruiert eine String-Ansicht auf str. Die Länge wird von std::size(str) übernommen.

std::data(str) muss für die Lebensdauer dieses String-View-Objekts gültig bleiben.

Dieser Konstruktor nimmt nur an der Überlastauflösung teil, wenn Container ein Container mit einem kompatiblen Zeichentyp wie value_type ist. Die kompatiblen Zeichentypen sind: QChar, ushort, char16_t und (auf Plattformen wie Windows, wo es ein 16-Bit-Typ ist) wchar_t.

Die String-Ansicht ist leer, wenn und nur wenn std::size(str) == 0. Es ist nicht spezifiziert, ob dieser Konstruktor zu einer Null-String-Ansicht führen kann (std::data(str) müsste in diesem Fall nullptr zurückgeben).

Siehe auch isNull() und isEmpty().

[noexcept] QStringView::QStringView(const QString &str)

Konstruiert eine String-Ansicht auf str.

str.data() muss während der Lebensdauer dieses Objekts gültig bleiben.

Die String-Ansicht ist null, wenn und nur wenn str.isNull().

[constexpr noexcept] QStringView::QStringView(std::nullptr_t)

Konstruiert eine Null-String-Ansicht.

Siehe auch isNull().

[constexpr] template <typename Char, QStringView::if_compatible_char<Char> = true> QStringView::QStringView(const Char *first, const Char *last)

Konstruiert eine String-Ansicht auf first mit der Länge (last - first).

Der Bereich [first,last) muss während der Lebensdauer dieses Objekts gültig bleiben.

Die Übergabe von \nullptr als first ist sicher, wenn last auch nullptr ist, und führt zu einer Null-String-Ansicht.

Das Verhalten ist undefiniert, wenn last vor first steht, oder first ist nullptr und last nicht.

Dieser Konstruktor nimmt nur an der Überlastauflösung teil, wenn Char ein kompatibler Zeichentyp ist. Die kompatiblen Zeichentypen sind: QChar, ushort, char16_t und (auf Plattformen wie Windows, wo es sich um einen 16-Bit-Typ handelt) wchar_t.

[constexpr] template <typename Char, QStringView::if_compatible_char<Char> = true> QStringView::QStringView(const Char *str, qsizetype len)

Konstruiert eine String-Ansicht auf str mit der Länge len.

Der Bereich [str,len) muss während der Lebensdauer dieses String View-Objekts gültig bleiben.

Die Übergabe von nullptr als str ist sicher, wenn len ebenfalls 0 ist, und führt zu einer Null-String-Ansicht.

Das Verhalten ist undefiniert, wenn len negativ ist oder, wenn positiv, wenn str nullptr ist.

Dieser Konstruktor nimmt nur an der Überlastauflösung teil, wenn Char ein kompatibler Zeichentyp ist. Die kompatiblen Zeichentypen sind: QChar, ushort, char16_t und (auf Plattformen wie Windows, wo es sich um einen 16-Bit-Typ handelt) wchar_t.

[constexpr noexcept] QChar QStringView::at(qsizetype n) const

Gibt das Zeichen an der Position n in dieser Zeichenfolgenansicht zurück.

Das Verhalten ist undefiniert, wenn n negativ oder nicht kleiner als size() ist.

Siehe auch operator[](), front(), und back().

[constexpr] QChar QStringView::back() const

Gibt das letzte Zeichen in der Zeichenkettenansicht zurück. Dasselbe wie last().

Diese Funktion wird aus Gründen der STL-Kompatibilität bereitgestellt.

Warnung: Der Aufruf dieser Funktion bei einer leeren String-Ansicht führt zu undefiniertem Verhalten.

Siehe auch front(), first(), und last().

[noexcept] QStringView::const_iterator QStringView::begin() const

Gibt einen const STL-artigen Iterator zurück, der auf das erste Zeichen in der Zeichenkettenansicht zeigt.

Diese Funktion wird aus Gründen der STL-Kompatibilität bereitgestellt.

Siehe auch end(), constBegin(), cbegin(), rbegin(), und data().

[noexcept] QStringView::const_iterator QStringView::cbegin() const

Dasselbe wie begin().

Diese Funktion wird aus Gründen der STL-Kompatibilität bereitgestellt.

Siehe auch cend(), begin(), constBegin(), crbegin(), und data().

[noexcept] QStringView::const_iterator QStringView::cend() const

Dasselbe wie end().

Diese Funktion ist aus Gründen der STL-Kompatibilität vorgesehen.

Siehe auch cbegin(), end(), constEnd(), und crend().

[constexpr noexcept] void QStringView::chop(qsizetype length)

Kürzt diese Zeichenkettenansicht um length Zeichen ab.

Dasselbe wie *this = left(size() - length).

Hinweis: Das Verhalten ist undefiniert, wenn length < 0 oder length > size().

Siehe auch mid(), left(), right(), chopped(), truncate(), und slice().

[constexpr noexcept] QStringView QStringView::chopped(qsizetype length) const

Gibt die Teilzeichenkette der Länge size() - length zurück, die am Anfang dieses Objekts beginnt.

Dasselbe wie left(size() - length).

Hinweis: Das Verhalten ist undefiniert, wenn length < 0 oder length > size().

Siehe auch mid(), left(), right(), chop(), truncate(), und slice().

[noexcept] int QStringView::compare(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Vergleicht diese Zeichenkettenansicht mit der Zeichenkettenansicht str und gibt eine negative Ganzzahl zurück, wenn diese Zeichenkettenansicht kleiner als str ist, eine positive Ganzzahl, wenn sie größer als str ist, und Null, wenn sie gleich sind.

Wenn cs gleich Qt::CaseSensitive ist (Standardeinstellung), wird beim Vergleich zwischen Groß- und Kleinschreibung unterschieden; andernfalls wird die Groß- und Kleinschreibung nicht berücksichtigt.

Siehe auch operator==(), operator<(), und operator>().

[noexcept, since 6.5] int QStringView::compare(QUtf8StringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Vergleicht diese Zeichenkettenansicht mit QUtf8StringView str und gibt eine negative Ganzzahl zurück, wenn diese Zeichenkettenansicht kleiner ist als str, eine positive Ganzzahl, wenn sie größer ist als str, und Null, wenn sie gleich sind.

Wenn cs gleich Qt::CaseSensitive ist (die Vorgabe), wird beim Vergleich die Groß-/Kleinschreibung beachtet; andernfalls wird die Groß-/Kleinschreibung nicht berücksichtigt.

Diese Funktion wurde in Qt 6.5 eingeführt.

Siehe auch operator==(), operator<(), und operator>().

[noexcept, since 6.1] QStringView::const_iterator QStringView::constBegin() const

Dasselbe wie begin().

Diese Funktion wurde in Qt 6.1 eingeführt.

Siehe auch constEnd(), begin(), cbegin(), crbegin(), und data().

[noexcept, since 6.0] QStringView::const_pointer QStringView::constData() const

Gibt einen Konstantenzeiger auf das erste Zeichen in der Zeichenkettenansicht zurück.

Hinweis: Das durch den Rückgabewert repräsentierte Zeichenarray ist nicht null-terminiert.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch data(), begin(), end(), und utf16().

[noexcept, since 6.1] QStringView::const_iterator QStringView::constEnd() const

Dasselbe wie end().

Diese Funktion wurde in Qt 6.1 eingeführt.

Siehe auch constBegin(), end(), cend(), und crend().

[since 6.1] bool QStringView::contains(const QRegularExpression &re, QRegularExpressionMatch *rmatch = nullptr) const

Gibt true zurück, wenn der reguläre Ausdruck re irgendwo in dieser Zeichenfolgenansicht übereinstimmt; andernfalls wird false zurückgegeben.

Wenn die Übereinstimmung erfolgreich ist und rmatch nicht nullptr ist, schreibt sie auch die Ergebnisse der Übereinstimmung in das QRegularExpressionMatch Objekt, auf das rmatch zeigt.

Diese Funktion wurde in Qt 6.1 eingeführt.

Siehe auch QRegularExpression::match().

[since 6.1] qsizetype QStringView::count(const QRegularExpression &re) const

Gibt die Anzahl der Übereinstimmungen des regulären Ausdrucks re in der Zeichenfolgenansicht zurück.

Aus historischen Gründen zählt diese Funktion sich überschneidende Übereinstimmungen. Dieses Verhalten unterscheidet sich von der einfachen Iteration über die Übereinstimmungen in der Zeichenkettenansicht mit QRegularExpressionMatchIterator.

Diese Funktion wurde in Qt 6.1 eingeführt.

Siehe auch QRegularExpression::globalMatch().

[noexcept, since 6.0] qsizetype QStringView::count(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Diese Funktion überlastet count().

Gibt die Anzahl der Vorkommen des Zeichens ch in der Zeichenkettenansicht zurück.

Wenn cs gleich Qt::CaseSensitive ist (die Vorgabe), wird die Groß-/Kleinschreibung beachtet; andernfalls wird die Groß-/Kleinschreibung nicht beachtet.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QString::count(), contains(), und indexOf().

[since 6.4] qsizetype QStringView::count(QLatin1StringView l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Diese Funktion überlastet count().

Gibt die Anzahl der (sich möglicherweise überschneidenden) Vorkommen der Zeichenkette Latin-1 zurück, die von l1 in dieser Zeichenkettenansicht angezeigt wird.

Wenn cs gleich Qt::CaseSensitive ist (die Vorgabe), wird die Groß-/Kleinschreibung beachtet; andernfalls wird die Groß-/Kleinschreibung nicht beachtet.

Diese Funktion wurde in Qt 6.4 eingeführt.

Siehe auch QString::count(), contains(), und indexOf().

[noexcept, since 6.0] qsizetype QStringView::count(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Diese Funktion überlastet count().

Gibt die Anzahl der (sich möglicherweise überschneidenden) Vorkommen der Zeichenfolgenansicht str in dieser Zeichenfolgenansicht zurück.

Wenn cs gleich Qt::CaseSensitive ist (die Vorgabe), wird zwischen Groß- und Kleinschreibung unterschieden; andernfalls wird die Groß- und Kleinschreibung nicht berücksichtigt.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QString::count(), contains(), und indexOf().

[noexcept] QStringView::const_reverse_iterator QStringView::crbegin() const

Dasselbe wie rbegin().

Diese Funktion ist aus Gründen der STL-Kompatibilität vorgesehen.

Siehe auch crend(), rbegin(), und cbegin().

[noexcept] QStringView::const_reverse_iterator QStringView::crend() const

Dasselbe wie rend().

Diese Funktion ist aus Gründen der STL-Kompatibilität vorgesehen.

Siehe auch crbegin(), rend(), und cend().

[noexcept] QStringView::const_pointer QStringView::data() const

Gibt einen Konstantenzeiger auf das erste Zeichen in der Zeichenkettenansicht zurück.

Hinweis: Das durch den Rückgabewert dargestellte Zeichen-Array ist nicht null-terminiert.

Siehe auch begin(), end(), und utf16().

[constexpr noexcept] bool QStringView::empty() const

Gibt zurück, ob diese String-Ansicht leer ist, d. h. ob size() == 0.

Diese Funktion wird aus Gründen der STL-Kompatibilität bereitgestellt.

Siehe auch isEmpty(), isNull(), size(), und length().

[noexcept] QStringView::const_iterator QStringView::end() const

Gibt einen const STL-artigen Iterator zurück, der auf das imaginäre Zeichen nach dem letzten Zeichen in der Liste zeigt.

Diese Funktion wird aus Gründen der STL-Kompatibilität bereitgestellt.

Siehe auch begin(), constEnd(), cend(), und rend().

[constexpr] QChar QStringView::first() const

Gibt das erste Zeichen in der Zeichenkettenansicht zurück. Dasselbe wie front().

Diese Funktion ist für die Kompatibilität mit anderen Qt-Containern vorgesehen.

Warnung: Der Aufruf dieser Funktion bei einer leeren String-Ansicht führt zu undefiniertem Verhalten.

Siehe auch front(), back(), und last().

[constexpr noexcept, since 6.0] QStringView QStringView::first(qsizetype n) const

Gibt eine String-Ansicht zurück, die auf die ersten n Zeichen dieser String-Ansicht zeigt.

Hinweis: Das Verhalten ist undefiniert, wenn n < 0 oder n > size().

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch last(), sliced(), startsWith(), chopped(), chop(), truncate(), und slice().

[static constexpr noexcept] template <typename Char, size_t Size, QStringView::if_compatible_char<Char> = true> QStringView QStringView::fromArray(const Char (&)[Size] string)

Konstruiert eine Zeichenkettenansicht für das vollständige Zeichenfolgenliteral string, einschließlich aller nachgestellten Char(0). Wenn Sie nicht möchten, dass der Null-Terminator in der Ansicht enthalten ist, können Sie ihn mit chop() entfernen, wenn Sie sicher sind, dass er am Ende steht. Alternativ können Sie die Konstruktorüberladung mit einem Array-Literal verwenden, das eine Ansicht bis zum ersten Null-Terminator in den Daten, aber ohne diesen, erzeugt.

string muss für die Lebensdauer dieses String-View-Objekts gültig bleiben.

Diese Funktion funktioniert mit jedem Array-Literal, wenn Char ein kompatibler Zeichentyp ist. Die kompatiblen Zeichentypen sind: QChar, ushort, char16_t und (auf Plattformen wie Windows, wo es sich um einen 16-Bit-Typ handelt) wchar_t.

[constexpr] QChar QStringView::front() const

Gibt das erste Zeichen in der Zeichenkettenansicht zurück. Dasselbe wie first().

Diese Funktion wird aus Gründen der STL-Kompatibilität bereitgestellt.

Warnung: Der Aufruf dieser Funktion bei einer leeren String-Ansicht führt zu undefiniertem Verhalten.

Siehe auch back(), first(), und last().

[since 6.1] qsizetype QStringView::indexOf(const QRegularExpression &re, qsizetype from = 0, QRegularExpressionMatch *rmatch = nullptr) const

Gibt die Indexposition der ersten Übereinstimmung des regulären Ausdrucks re in der Zeichenfolgenansicht zurück, wobei ab der Indexposition from vorwärts gesucht wird. Gibt -1 zurück, wenn re nirgendwo übereinstimmt.

Wenn die Übereinstimmung erfolgreich ist und rmatch nicht nullptr ist, werden die Ergebnisse der Übereinstimmung auch in das Objekt QRegularExpressionMatch geschrieben, auf das rmatch zeigt.

Hinweis: Aufgrund der Funktionsweise des Algorithmus für den Abgleich regulärer Ausdrücke wird diese Funktion wiederholt vom Anfang der Zeichenkettenansicht bis zur Position from abgleichen.

Diese Funktion wurde in Qt 6.1 eingeführt.

[constexpr noexcept] bool QStringView::isEmpty() const

Gibt zurück, ob diese String-Ansicht leer ist - das heißt, ob size() == 0.

Diese Funktion wird aus Kompatibilität mit anderen Qt-Containern bereitgestellt.

Siehe auch empty(), isNull(), size(), und length().

[noexcept, since 6.7] bool QStringView::isLower() const

Gibt true zurück, wenn diese Ansicht mit ihrer Kleinbuchstaben-Faltung identisch ist.

Beachten Sie, dass dies nicht bedeutet, dass die String-Ansicht keine Großbuchstaben enthält (einige Großbuchstaben haben keine Kleinbuchstaben-Faltung; sie werden von toString().toLower() unverändert gelassen). Weitere Informationen finden Sie in der Unicode-Norm, Abschnitt 3.13.

Diese Funktion wurde in Qt 6.7 eingeführt.

Siehe auch QChar::toLower() und isUpper().

[constexpr noexcept] bool QStringView::isNull() const

Gibt zurück, ob diese String-Ansicht null ist - das heißt, ob data() == nullptr.

Diese Funktion ist für die Kompatibilität mit anderen Qt-Containern vorgesehen.

Siehe auch empty(), isEmpty(), size(), und length().

[noexcept] bool QStringView::isRightToLeft() const

Gibt true zurück, wenn die Zeichenkettenansicht von rechts nach links gelesen wird.

Siehe auch QString::isRightToLeft().

[noexcept, since 6.7] bool QStringView::isUpper() const

Gibt true zurück, wenn diese Ansicht mit ihrer Großbuchstaben-Faltung identisch ist.

Beachten Sie, dass dies nicht bedeutet, dass die Zeichenkettenansicht keine Kleinbuchstaben enthält (einige Kleinbuchstaben haben keine Großbuchstabenfaltung; sie werden von toString().toUpper() unverändert gelassen). Weitere Informationen finden Sie in der Unicode-Norm, Abschnitt 3.13.

Diese Funktion wurde in Qt 6.7 eingeführt.

Siehe auch QChar::toUpper() und isLower().

[noexcept] bool QStringView::isValidUtf16() const

Gibt true zurück, wenn die String-Ansicht gültige UTF-16-kodierte Daten enthält, oder andernfalls false.

Beachten Sie, dass diese Funktion keine spezielle Validierung der Daten durchführt; sie prüft lediglich, ob sie erfolgreich aus UTF-16 dekodiert werden können. Es wird davon ausgegangen, dass die Daten in Host-Byte-Reihenfolge vorliegen; das Vorhandensein eines BOM ist bedeutungslos.

Siehe auch QString::isValidUtf16().

[constexpr] QChar QStringView::last() const

Gibt das letzte Zeichen in der Zeichenkettenansicht zurück. Dasselbe wie back().

Diese Funktion ist für die Kompatibilität mit anderen Qt-Containern vorgesehen.

Warnung: Der Aufruf dieser Funktion bei einer leeren String-Ansicht führt zu undefiniertem Verhalten.

Siehe auch back(), front(), und first().

[constexpr noexcept, since 6.0] QStringView QStringView::last(qsizetype n) const

Gibt eine String-Ansicht zurück, die auf die letzten n Zeichen dieser String-Ansicht zeigt.

Hinweis: Das Verhalten ist undefiniert, wenn n < 0 oder n > size().

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch first(), sliced(), endsWith(), chopped(), chop(), truncate(), und slice().

[since 6.2] qsizetype QStringView::lastIndexOf(const QRegularExpression &re, QRegularExpressionMatch *rmatch = nullptr) const

Gibt die Indexposition der letzten Übereinstimmung des regulären Ausdrucks re in der Zeichenfolgenansicht zurück. Gibt -1 zurück, wenn re nirgendwo übereinstimmt.

Wenn die Übereinstimmung erfolgreich war und rmatch nicht nullptr ist, werden die Ergebnisse der Übereinstimmung auch in das Objekt QRegularExpressionMatch geschrieben, auf das rmatch verweist.

Hinweis: Aufgrund der Funktionsweise des Algorithmus für den Abgleich mit regulären Ausdrücken wird diese Funktion vom Anfang der Zeichenkettenansicht bis zum Ende der Zeichenkettenansicht wiederholt einen Abgleich durchführen.

Diese Funktion wurde in Qt 6.2 eingeführt.

[since 6.1] qsizetype QStringView::lastIndexOf(const QRegularExpression &re, qsizetype from, QRegularExpressionMatch *rmatch = nullptr) const

Gibt die Indexposition der letzten Übereinstimmung des regulären Ausdrucks re in der Zeichenkettenansicht zurück, die vor der Indexposition from beginnt.

Ist from gleich -1, beginnt die Suche am letzten Zeichen; ist es -2, am vorletzten Zeichen und so weiter.

Gibt -1 zurück, wenn re nirgends einen Treffer erzielt hat.

Wenn die Übereinstimmung erfolgreich ist und rmatch nicht nullptr ist, werden die Ergebnisse der Übereinstimmung auch in das Objekt QRegularExpressionMatch geschrieben, auf das rmatch zeigt.

Hinweis: Aufgrund der Funktionsweise des Algorithmus für die Suche nach regulären Ausdrücken wird diese Funktion vom Anfang der Zeichenkettenansicht bis zum Erreichen der Position from wiederholt einen Treffer erzielen.

Hinweis: Bei der Suche nach einem regulären Ausdruck re, der mit 0 Zeichen übereinstimmen kann, wird die Übereinstimmung am Ende der Daten durch ein negatives from von der Suche ausgeschlossen, auch wenn man normalerweise davon ausgeht, dass -1 vom Ende der Zeichenkettenansicht aus sucht: Die Übereinstimmung am Ende liegt nach dem letzten Zeichen und wird daher ausgeschlossen. Um eine solche letzte leere Übereinstimmung einzuschließen, geben Sie entweder einen positiven Wert für from an oder lassen Sie den Parameter from ganz weg.

Diese Funktion wurde in Qt 6.1 eingeführt.

[noexcept, since 6.3] qsizetype QStringView::lastIndexOf(QChar c, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Diese Funktion überlastet lastIndexOf().

Diese Funktion wurde in Qt 6.3 eingeführt.

[constexpr noexcept] qsizetype QStringView::length() const

Dasselbe wie size().

Diese Funktion wird aus Gründen der Kompatibilität mit anderen Qt-Containern bereitgestellt.

Siehe auch empty(), isEmpty(), isNull(), und size().

[since 6.4] int QStringView::localeAwareCompare(QStringView other) const

Vergleicht diese Zeichenkettenansicht mit der Zeichenkettenansicht other und gibt eine ganze Zahl zurück, die kleiner, gleich oder größer als Null ist, wenn diese Zeichenkettenansicht kleiner, gleich oder größer als die Zeichenkettenansicht other ist.

Der Vergleich wird in einer lokal- und plattformabhängigen Weise durchgeführt. Verwenden Sie diese Funktion, um dem Benutzer sortierte Listen von Strings zu präsentieren.

Diese Funktion wurde in Qt 6.4 eingeführt.

Siehe auch Comparing Strings.

[static constexpr noexcept, since 6.8] qsizetype QStringView::maxSize()

Sie gibt die maximale Anzahl von Elementen zurück, die die Ansicht theoretisch darstellen kann. In der Praxis kann die Anzahl viel kleiner sein, begrenzt durch den dem System zur Verfügung stehenden Speicher.

Diese Funktion wurde in Qt 6.8 eingeführt.

[constexpr noexcept, since 6.8] qsizetype QStringView::max_size() const

Diese Funktion wird aus Gründen der STL-Kompatibilität bereitgestellt.

Rückgabe maxSize().

Diese Funktion wurde in Qt 6.8 eingeführt.

[noexcept] QStringView::const_reverse_iterator QStringView::rbegin() const

Gibt einen const STL-ähnlichen Reverse-Iterator zurück, der auf das erste Zeichen in der Zeichenkettenansicht in umgekehrter Reihenfolge zeigt.

Diese Funktion wird aus Gründen der STL-Kompatibilität bereitgestellt.

Siehe auch rend(), crbegin(), und begin().

[noexcept] QStringView::const_reverse_iterator QStringView::rend() const

Gibt einen umgekehrten Iterator im STL-Stil zurück, der in umgekehrter Reihenfolge auf ein Zeichen hinter dem letzten Zeichen in der Zeichenkettenansicht zeigt.

Diese Funktion wird aus Gründen der STL-Kompatibilität bereitgestellt.

Siehe auch rbegin(), crend(), und end().

[constexpr noexcept] qsizetype QStringView::size() const

Gibt die Größe dieser Zeichenkettenansicht in UTF-16-Codeeinheiten zurück (d. h. Surrogatpaare zählen für die Zwecke dieser Funktion als zwei, genau wie in QString).

Siehe auch empty(), isEmpty(), isNull(), und length().

[constexpr, since 6.8] QStringView &QStringView::slice(qsizetype pos, qsizetype n)

Ändert diese Zeichenkettenansicht so, dass sie an der Position pos beginnt und um n Codepunkte erweitert wird.

Hinweis: Das Verhalten ist undefiniert, wenn pos < 0, n < 0, oder pos + n > size().

Diese Funktion wurde in Qt 6.8 eingeführt.

Siehe auch sliced(), first(), last(), chopped(), chop(), und truncate().

[constexpr, since 6.8] QStringView &QStringView::slice(qsizetype pos)

Dies ist eine überladene Funktion.

Ändert diese Zeichenkettenansicht so, dass sie an der Position pos beginnt und bis zu ihrem Ende reicht.

Hinweis: Das Verhalten ist undefiniert, wenn pos < 0 oder pos > size().

Diese Funktion wurde in Qt 6.8 eingeführt.

Siehe auch sliced(), first(), last(), chopped(), chop(), und truncate().

[constexpr noexcept, since 6.0] QStringView QStringView::sliced(qsizetype pos, qsizetype n) const

Gibt eine String-Ansicht zurück, die auf n Zeichen dieser String-Ansicht zeigt, beginnend an der Position pos.

Hinweis: Das Verhalten ist undefiniert, wenn pos < 0, n < 0, oder pos + n > size().

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch first(), last(), chopped(), chop(), truncate(), und slice().

[constexpr noexcept, since 6.0] QStringView QStringView::sliced(qsizetype pos) const

Dies ist eine überladene Funktion.

Gibt eine Zeichenkettenansicht zurück, die an der Position pos in diesem Objekt beginnt und bis zu dessen Ende reicht.

Hinweis: Das Verhalten ist undefiniert, wenn pos < 0 oder pos > size().

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch first(), last(), chopped(), chop(), truncate(), und slice().

[since 6.0] QList<QStringView> QStringView::split(const QRegularExpression &re, Qt::SplitBehavior behavior = Qt::KeepEmptyParts) const

Dies ist eine überladene Funktion.

Teilt die Zeichenkette in Teilzeichenketten auf, wo immer der reguläre Ausdruck re zutrifft, und gibt die Liste dieser Zeichenketten zurück. Wenn re nirgendwo in der Zeichenkette übereinstimmt, gibt split() eine einzelelementige Liste zurück, die diese Zeichenkette als Ansicht enthält.

Hinweis: Die Ansichten in der zurückgegebenen Liste sind Unteransichten dieser Ansicht; als solche verweisen sie auf dieselben Daten wie diese und bleiben nur so lange gültig, wie diese Daten aktuell sind.

Diese Funktion wurde in Qt 6.0 eingeführt.

[since 6.0] CFStringRef QStringView::toCFString() const

Erzeugt einen CFString aus diesem QStringView.

Der Aufrufer besitzt den CFString und ist dafür verantwortlich, ihn freizugeben.

Hinweis: Diese Funktion ist nur unter macOS und iOS verfügbar.

Diese Funktion wurde in Qt 6.0 eingeführt.

[since 6.0] double QStringView::toDouble(bool *ok = nullptr) const

Gibt die in einen double -Wert umgewandelte String-Ansicht zurück.

Gibt eine Unendlichkeit zurück, wenn die Konvertierung überläuft, oder 0,0, wenn die Konvertierung aus anderen Gründen fehlschlägt (z. B. Unterlauf).

Wenn ok nicht nullptr ist, wird ein Fehler durch Setzen von *ok auf false und ein Erfolg durch Setzen von *ok auf true gemeldet.

Die Zeichenkettenkonvertierung erfolgt immer im Gebietsschema 'C'. Für eine schauplatzabhängige Konvertierung verwenden Sie QLocale::toDouble()

Aus historischen Gründen kann diese Funktion keine Tausendertrennzeichen verarbeiten. Wenn Sie solche Zahlen konvertieren müssen, verwenden Sie QLocale::toDouble().

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QString::toDouble().

[since 6.0] float QStringView::toFloat(bool *ok = nullptr) const

Gibt die in einen float -Wert umgewandelte String-Ansicht zurück.

Gibt unendlich zurück, wenn die Konvertierung überläuft, oder 0,0, wenn die Konvertierung aus anderen Gründen fehlschlägt (z. B. Unterlauf).

Wenn ok nicht nullptr ist, wird ein Fehler durch Setzen von *ok auf false und ein Erfolg durch Setzen von *ok auf true gemeldet.

Die Zeichenkettenkonvertierung erfolgt immer im Gebietsschema 'C'. Für eine lokalisationsabhängige Konvertierung verwenden Sie QLocale::toFloat()

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QString::toFloat().

[since 6.0] int QStringView::toInt(bool *ok = nullptr, int base = 10) const

Gibt die in int konvertierte Zeichenkettenansicht unter Verwendung der Basis base zurück, die standardmäßig 10 ist und zwischen 2 und 36 liegen muss, oder 0. Gibt 0 zurück, wenn die Konvertierung fehlschlägt.

Wenn ok nicht nullptr ist, wird ein Fehler durch Setzen von *ok auf false und ein Erfolg durch Setzen von *ok auf true gemeldet.

Wenn base gleich 0 ist, wird die Konvention der Sprache C verwendet: Wenn die Zeichenkettenansicht mit "0x" beginnt, wird die Basis 16 verwendet; andernfalls, wenn die Zeichenkettenansicht mit "0" beginnt, wird die Basis 8 verwendet; andernfalls wird die Basis 10 verwendet.

Die Zeichenkettenkonvertierung erfolgt immer im Gebietsschema 'C'. Für eine lokalisationsabhängige Konvertierung verwenden Sie QLocale::toInt()

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QString::toInt().

QByteArray QStringView::toLatin1() const

Gibt eine Latin-1-Darstellung der Zeichenkette als QByteArray zurück.

Das Verhalten ist undefiniert, wenn die Zeichenkette nicht-lateinische1 Zeichen enthält.

Siehe auch toUtf8(), toLocal8Bit(), und QStringEncoder.

QByteArray QStringView::toLocal8Bit() const

Gibt eine lokale 8-Bit-Darstellung des Strings als QByteArray zurück.

Auf Unix-Systemen ist dies äquivalent zu toUtf8(), unter Windows wird die aktuelle Codepage des Systems verwendet.

Das Verhalten ist undefiniert, wenn die Zeichenkette Zeichen enthält, die von der 8-Bit-Kodierung des Gebietsschemas nicht unterstützt werden.

Siehe auch toLatin1(), toUtf8(), und QStringEncoder.

[since 6.0] long QStringView::toLong(bool *ok = nullptr, int base = 10) const

Gibt die in long konvertierte Zeichenkettenansicht mit der Basis base zurück, die standardmäßig 10 ist und zwischen 2 und 36 liegen muss, oder 0. Gibt 0 zurück, wenn die Konvertierung fehlschlägt.

Wenn ok nicht nullptr ist, wird ein Fehler durch Setzen von *ok auf false und ein Erfolg durch Setzen von *ok auf true gemeldet.

Wenn base gleich 0 ist, wird die Konvention der Sprache C verwendet: Wenn die Zeichenkettenansicht mit "0x" beginnt, wird die Basis 16 verwendet; andernfalls, wenn die Zeichenkettenansicht mit "0" beginnt, wird die Basis 8 verwendet; andernfalls wird die Basis 10 verwendet.

Die Zeichenkettenkonvertierung erfolgt immer im Gebietsschema 'C'. Für eine lokalisationsabhängige Konvertierung verwenden Sie QLocale::toLong()

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QString::toLong().

[since 6.0] qlonglong QStringView::toLongLong(bool *ok = nullptr, int base = 10) const

Gibt die in long long konvertierte Zeichenkettenansicht mit der Basis base zurück, die standardmäßig 10 ist und zwischen 2 und 36 liegen muss, oder 0. Gibt 0 zurück, wenn die Konvertierung fehlschlägt.

Wenn ok nicht nullptr ist, wird ein Fehler durch Setzen von *ok auf false und ein Erfolg durch Setzen von *ok auf true gemeldet.

Wenn base gleich 0 ist, wird die Konvention der Sprache C verwendet: Wenn die Zeichenkettenansicht mit "0x" beginnt, wird die Basis 16 verwendet; andernfalls, wenn die Zeichenkettenansicht mit "0" beginnt, wird die Basis 8 verwendet; andernfalls wird die Basis 10 verwendet.

Die Zeichenkettenkonvertierung erfolgt immer im Gebietsschema 'C'. Für eine lokalisationsabhängige Konvertierung verwenden Sie QLocale::toLongLong()

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QString::toLongLong().

[since 6.0] NSString *QStringView::toNSString() const

Erzeugt einen NSString aus diesem QStringView.

Der NSString wird automatisch wieder freigegeben.

Hinweis: Diese Funktion ist nur unter macOS und iOS verfügbar.

Diese Funktion wurde in Qt 6.0 eingeführt.

[since 6.0] short QStringView::toShort(bool *ok = nullptr, int base = 10) const

Gibt die in short konvertierte Zeichenkettenansicht mit der Basis base zurück, die standardmäßig 10 ist und zwischen 2 und 36 liegen muss, oder 0. Gibt 0 zurück, wenn die Konvertierung fehlschlägt.

Wenn ok nicht nullptr ist, wird ein Fehler durch Setzen von *ok auf false und ein Erfolg durch Setzen von *ok auf true gemeldet.

Wenn base gleich 0 ist, wird die Konvention der Sprache C verwendet: Wenn die Zeichenkettenansicht mit "0x" beginnt, wird die Basis 16 verwendet; andernfalls, wenn die Zeichenkettenansicht mit "0" beginnt, wird die Basis 8 verwendet; andernfalls wird die Basis 10 verwendet.

Die Zeichenkettenkonvertierung erfolgt immer im Gebietsschema 'C'. Für eine lokalisationsabhängige Konvertierung verwenden Sie QLocale::toShort()

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QString::toShort().

QString QStringView::toString() const

Gibt eine tiefe Kopie der Daten dieser Zeichenfolgenansicht als QString zurück.

Der Rückgabewert ist die Null QString, wenn und nur wenn diese Zeichenfolgenansicht Null ist.

[since 6.0] uint QStringView::toUInt(bool *ok = nullptr, int base = 10) const

Gibt die in unsigned int konvertierte Zeichenkettenansicht unter Verwendung der Basis base zurück, die standardmäßig 10 ist und zwischen 2 und 36 liegen muss, oder 0. Gibt 0 zurück, wenn die Konvertierung fehlschlägt.

Wenn ok nicht nullptr ist, wird ein Fehler durch Setzen von *ok auf false und ein Erfolg durch Setzen von *ok auf true gemeldet.

Wenn base gleich 0 ist, wird die Konvention der Sprache C verwendet: Wenn die Zeichenkettenansicht mit "0x" beginnt, wird die Basis 16 verwendet; andernfalls, wenn die Zeichenkettenansicht mit "0" beginnt, wird die Basis 8 verwendet; andernfalls wird die Basis 10 verwendet.

Die Zeichenkettenkonvertierung erfolgt immer im Gebietsschema 'C'. Für eine lokalisationsabhängige Konvertierung verwenden Sie QLocale::toUInt()

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QString::toUInt().

[since 6.0] ulong QStringView::toULong(bool *ok = nullptr, int base = 10) const

Gibt die in unsigned long konvertierte Zeichenkettenansicht unter Verwendung der Basis base zurück, die standardmäßig 10 ist und zwischen 2 und 36 liegen muss, oder 0. Gibt 0 zurück, wenn die Konvertierung fehlschlägt.

Wenn ok nicht nullptr ist, wird ein Fehler durch Setzen von *ok auf false und ein Erfolg durch Setzen von *ok auf true gemeldet.

Wenn base gleich 0 ist, wird die Konvention der Sprache C verwendet: Wenn die Zeichenkettenansicht mit "0x" beginnt, wird die Basis 16 verwendet; andernfalls, wenn die Zeichenkettenansicht mit "0" beginnt, wird die Basis 8 verwendet; andernfalls wird die Basis 10 verwendet.

Die Zeichenkettenkonvertierung erfolgt immer im Gebietsschema 'C'. Für eine lokalisationsabhängige Konvertierung verwenden Sie QLocale::toULongLong()

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QString::toULong().

[since 6.0] qulonglong QStringView::toULongLong(bool *ok = nullptr, int base = 10) const

Gibt die in unsigned long long konvertierte Zeichenkettenansicht unter Verwendung der Basis base zurück, die standardmäßig 10 ist und zwischen 2 und 36 liegen muss, oder 0. Gibt 0 zurück, wenn die Konvertierung fehlschlägt.

Wenn ok nicht nullptr ist, wird ein Fehler durch Setzen von *ok auf false und ein Erfolg durch Setzen von *ok auf true gemeldet.

Wenn base gleich 0 ist, wird die Konvention der Sprache C verwendet: Wenn die Zeichenkettenansicht mit "0x" beginnt, wird die Basis 16 verwendet; andernfalls, wenn die Zeichenkettenansicht mit "0" beginnt, wird die Basis 8 verwendet; andernfalls wird die Basis 10 verwendet.

Die Zeichenkettenkonvertierung erfolgt immer im Gebietsschema 'C'. Für eine lokalisationsabhängige Konvertierung verwenden Sie QLocale::toULongLong()

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QString::toULongLong().

[since 6.0] ushort QStringView::toUShort(bool *ok = nullptr, int base = 10) const

Gibt die in unsigned short konvertierte Zeichenkettenansicht unter Verwendung der Basis base zurück, die standardmäßig 10 ist und zwischen 2 und 36 liegen muss, oder 0. Gibt 0 zurück, wenn die Konvertierung fehlschlägt.

Wenn ok nicht nullptr ist, wird ein Fehler durch Setzen von *ok auf false und ein Erfolg durch Setzen von *ok auf true gemeldet.

Wenn base gleich 0 ist, wird die Konvention der Sprache C verwendet: Wenn die Zeichenkettenansicht mit "0x" beginnt, wird die Basis 16 verwendet; andernfalls, wenn die Zeichenkettenansicht mit "0" beginnt, wird die Basis 8 verwendet; andernfalls wird die Basis 10 verwendet.

Die Zeichenkettenkonvertierung erfolgt immer im Gebietsschema 'C'. Für eine lokalisationsabhängige Konvertierung verwenden Sie QLocale::toUShort()

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QString::toUShort().

QList<uint> QStringView::toUcs4() const

Gibt eine UCS-4/UTF-32-Darstellung der Zeichenkettenansicht als QList<uint> zurück.

UCS-4 ist ein Unicode-Codec und daher verlustfrei. Alle Zeichen dieser Zeichenkettenansicht werden in UCS-4 kodiert. Jede ungültige Folge von Codeeinheiten in dieser Zeichenkettenansicht wird durch das Unicode-Ersatzzeichen (QChar::ReplacementCharacter, das U+FFFD entspricht) ersetzt.

Die zurückgegebene Liste ist nicht 0-terminiert.

Siehe auch toUtf8(), toLatin1(), toLocal8Bit(), und QStringEncoder.

QByteArray QStringView::toUtf8() const

Gibt eine UTF-8-Darstellung der Zeichenkettenansicht als QByteArray zurück.

UTF-8 ist ein Unicode-Codec und kann alle Zeichen in einer Unicode-Zeichenkette wie QString darstellen.

Siehe auch toLatin1(), toLocal8Bit(), und QStringEncoder.

qsizetype QStringView::toWCharArray(wchar_t *array) const

Transkribiert diese String-Ansicht in die angegebene array.

Der Aufrufer ist dafür verantwortlich, dass array groß genug ist, um die wchar_t Kodierung dieser Zeichenkettenansicht zu speichern (die Zuweisung eines Arrays mit der gleichen Länge wie die Zeichenkettenansicht ist immer ausreichend). Auf Plattformen, auf denen wchar_t 2 Bytes breit ist (z.B. Windows), wird das Array in UTF-16 kodiert; andernfalls (Unix-Systeme) wird angenommen, dass wchar_t 4 Bytes breit ist und die Daten in UCS-4 geschrieben werden.

Hinweis: Diese Funktion schreibt keinen Nullterminator an das Ende von array.

Gibt die Anzahl der wchar_t Einträge zurück, die in array geschrieben wurden.

Siehe auch QString::toWCharArray().

[noexcept] QStringView QStringView::trimmed() const

Entfernt führende und nachgestellte Leerzeichen und gibt das Ergebnis zurück.

Ein Leerzeichen ist jedes Zeichen, für das QChar::isSpace() true zurückgibt. Dazu gehören die ASCII-Zeichen '\t', '\n', '\v', '\f', '\r' und ' '.

[constexpr noexcept] void QStringView::truncate(qsizetype length)

Kürzt diese Zeichenkettenansicht auf die Länge length ab.

Dasselbe wie *this = left(length).

Hinweis: Das Verhalten ist undefiniert, wenn length < 0 oder length > size().

Siehe auch mid(), left(), right(), chopped(), und chop().

[constexpr noexcept] const QStringView::storage_type *QStringView::utf16() const

Gibt einen Konstantenzeiger auf das erste Zeichen in der Zeichenkettenansicht zurück.

Hinweis: Das durch den Rückgabewert dargestellte Zeichen-Array ist nicht null-terminiert.

storage_type ist char16_t.

Siehe auch begin(), end(), und data().

[noexcept, since 6.7] std::u16string_view QStringView::operator std::u16string_view() const

Konvertiert dieses QStringView Objekt in ein std::u16string_view Objekt. Die zurückgegebene Ansicht hat den gleichen Datenzeiger und die gleiche Länge wie diese Ansicht.

Diese Funktion wurde in Qt 6.7 eingeführt.

[constexpr] QChar QStringView::operator[](qsizetype n) const

Gibt das Zeichen an der Position n in dieser Zeichenfolgenansicht zurück.

Das Verhalten ist undefiniert, wenn n negativ oder nicht kleiner als size() ist.

Siehe auch at(), front(), und back().

Verwandte Nicht-Mitglieder

[noexcept] bool operator!=(const QStringView &lhs, const QStringView &rhs)

[noexcept] bool operator<(const QStringView &lhs, const QStringView &rhs)

[noexcept] bool operator<=(const QStringView &lhs, const QStringView &rhs)

[noexcept] bool operator==(const QStringView &lhs, const QStringView &rhs)

[noexcept] bool operator>(const QStringView &lhs, const QStringView &rhs)

[noexcept] bool operator>=(const QStringView &lhs, const QStringView &rhs)

Operatoren für den Vergleich von lhs mit rhs.

Siehe auch compare().

[noexcept] size_t qHash(QStringView key, size_t seed = 0)

Gibt den Hash-Wert für key zurück, wobei seed als Startwert für die Berechnung verwendet wird.

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.