Sur cette page

QStringView Class

La classe QStringView fournit une vue unifiée des chaînes UTF-16 avec un sous-ensemble en lecture seule de l'API QString. Plus d'informations...

En-tête : #include <QStringView>
CMake : find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake : QT += core

Note : Toutes les fonctions de cette classe sont réentrantes.

Types publics

Fonctions publiques

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 ch, 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 ch, 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 ch, 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 ch, 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) operator std::u16string_view() const
QChar operator[](qsizetype n) const

Membres publics statiques

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)

Description détaillée

Un QStringView fait référence à une portion contiguë d'une chaîne UTF-16 dont il n'est pas propriétaire. Il s'agit d'un type d'interface pour tous les types de chaînes UTF-16, sans qu'il soit nécessaire de construire d'abord un QString.

La chaîne UTF-16 peut être représentée sous la forme d'un tableau (ou d'une structure de données compatible avec les tableaux, telle que QString, std::basic_string, etc.) de QChar, ushort, char16_t ou (sur les plates-formes, telles que Windows, où il s'agit d'un type 16 bits) wchar_t.

QStringView est conçu comme un type d'interface ; son principal cas d'utilisation est celui d'un type de paramètre de fonction. Lorsque des QStringViews sont utilisés comme variables automatiques ou membres de données, il faut veiller à ce que les données de chaîne référencées (par exemple, appartenant à un QString) survivent au QStringView sur tous les chemins de code, de peur que la vue de chaîne ne finisse par référencer des données supprimées.

Utilisé comme type d'interface, QStringView permet à une seule fonction d'accepter une grande variété de sources de données de chaînes UTF-16. Une fonction acceptant QStringView remplace ainsi trois surcharges de fonctions (prenant QString et (const QChar*, qsizetype)), tout en permettant de transmettre à la fonction encore plus de sources de données sous forme de chaînes, telles que u"Hello World", un littéral de chaîne char16_t.

Les QStringViews doivent être transmises par valeur, et non par référence à une constante :

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

Si vous souhaitez donner à vos utilisateurs un maximum de liberté quant aux chaînes de caractères qu'ils peuvent transmettre à votre fonction, accompagnez la surcharge QStringView de surcharges pour les éléments suivants

  • QChar: cette surcharge peut déléguer à la version QStringView :
    void fun(QChar ch) { myfun1(QStringView(&ch, 1)); }

    même si, pour des raisons techniques, QStringView ne peut pas fournir lui-même un constructeur QChar.

  • QString: si vous stockez une copie non modifiée de la chaîne et souhaitez donc profiter du partage implicite de QString.
  • QLatin1StringViewQStringView : si vous pouvez mettre en œuvre la fonction sans convertir d'abord la chaîne QLatin1StringView en UTF-16 ; les utilisateurs s'attendent à ce qu'une fonction surchargée sur QLatin1StringView effectue strictement moins d'allocations de mémoire que l'appel sémantiquement équivalent de la version QStringView, qui implique la construction d'un QString à partir du QLatin1StringView.

QStringView peut également être utilisé comme valeur de retour d'une fonction. Si vous appelez une fonction renvoyant un QStringView, veillez à ne pas conserver le QStringView plus longtemps que la fonction ne promet de maintenir en vie les données de la chaîne référencée. En cas de doute, obtenez une référence forte aux données en appelant toString() pour convertir le QStringView en QString.

QStringView est un type littéral, mais comme il stocke les données sous forme de char16_t, l'itération n'est pas constexpr (casts de const char16_t* à const QChar*, ce qui n'est pas autorisé dans les fonctions constexpr ). Vous pouvez utiliser une boucle indexée et/ou utf16() dans des contextes constexpr à la place.

Voir aussi Quelle classe de chaîne utiliser ? et QString.

Documentation sur les types de membres

QStringView::const_iterator

Ce typedef fournit un itérateur constant de style STL pour QStringView.

Voir aussi iterator et const_reverse_iterator.

QStringView::const_pointer

Alias de value_type *. Fourni à des fins de compatibilité avec le STL.

QStringView::const_reference

Alias de value_type &. Fourni à des fins de compatibilité avec le STL.

QStringView::const_reverse_iterator

Ce typedef fournit un const reverse iterator de style STL pour QStringView.

Voir aussi reverse_iterator et const_iterator.

QStringView::difference_type

Alias de std::ptrdiff_t. Fourni à des fins de compatibilité avec le STL.

QStringView::iterator

Ce typedef fournit un itérateur constant de style STL pour QStringView.

QStringView STL ne supporte pas les itérateurs mutables, donc c'est la même chose que const_iterator.

Voir également const_iterator et reverse_iterator.

QStringView::pointer

Alias de value_type *. Fourni à des fins de compatibilité avec la STL.

QStringView ne prend pas en charge les pointeurs mutables, c'est donc la même chose que const_pointer.

QStringView::reference

Alias de value_type &. Fourni à des fins de compatibilité avec la STL.

QStringView ne prend pas en charge les références mutables, c'est donc la même chose que const_reference.

QStringView::reverse_iterator

Ce type fournit un itérateur inverse constant de style STL pour QStringView.

QStringView STL ne supporte pas les itérateurs inversés mutables, donc c'est la même chose que const_reverse_iterator.

Voir également const_reverse_iterator et iterator.

QStringView::size_type

Alias de qsizetype. Fourni à des fins de compatibilité avec le STL.

QStringView::storage_type

Alias pour char16_t.

QStringView::value_type

Alias de const QChar. Fourni à des fins de compatibilité avec la STL.

Documentation sur les fonctions membres

[constexpr noexcept] QStringView::QStringView()

Construit une vue de chaîne de caractères nulle.

Voir aussi isNull().

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

Construit une vue de chaîne sur le littéral de chaîne de caractères string. La vue couvre le tableau jusqu'à ce que le premier Char(0) soit rencontré, ou jusqu'à N, selon ce qui arrive en premier. Si vous avez besoin du tableau complet, utilisez plutôt fromArray().

string doit rester valide pendant toute la durée de vie de cet objet de vue de chaîne.

Contraintes

Participe à la résolution des surcharges uniquement si Char est un type de caractère compatible. Les types de caractères compatibles sont les suivants : QChar, ushort, char16_t et (sur les plates-formes, telles que Windows, où il s'agit d'un type 16 bits) wchar_t.

Voir également fromArray.

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

Construit une vue de chaîne sur str. La longueur est déterminée en recherchant le premier Char(0).

str doit rester valide pendant toute la durée de vie de cet objet "string view".

Transmettre nullptr en tant que str est sans danger et produit une vue de chaîne nulle.

Contraintes

Participe à la résolution des surcharges uniquement si Char est un type de caractère compatible. Les types de caractères compatibles sont les suivants : QChar, ushort, char16_t et (sur les plates-formes, telles que Windows, où il s'agit d'un type 16 bits) wchar_t.

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

Construit une vue de chaîne sur str. La longueur est tirée de std::size(str).

std::data(str) doit rester valide pendant toute la durée de vie de cet objet "string view".

La vue de chaîne sera vide si et seulement si std::size(str) == 0. Il n'est pas précisé si ce constructeur peut aboutir à une vue de chaîne nulle (std::data(str) devrait renvoyer nullptr pour cela).

Contraintes

Participe à la résolution de surcharge uniquement si Container est un conteneur avec un type de caractère compatible avec value_type. Les types de caractères compatibles sont : QChar, ushort, char16_t et (sur les plates-formes, telles que Windows, où il s'agit d'un type 16 bits) wchar_t.

Voir également isNull() et isEmpty().

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

Construit une vue de chaîne sur str.

str.data() doit rester valide pendant toute la durée de vie de cet objet "string view".

La vue de chaîne sera nulle si et seulement si str.isNull().

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

Construit une vue de chaîne de caractères nulle.

Voir aussi isNull().

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

Construit une vue de chaîne sur first avec la longueur (last - first).

La plage [first,last) doit rester valide pendant toute la durée de vie de cet objet "string view".

Transmettre \nullptr en tant que first est sûr si last est aussi nullptr, et résulte en une vue de chaîne nulle.

Le comportement est indéfini si last précède first, ou si first est nullptr et last ne l'est pas.

Contraintes

Participe à la résolution des surcharges uniquement si Char est un type de caractère compatible. Les types de caractères compatibles sont : QChar, ushort, char16_t et (sur les plates-formes, telles que Windows, où il s'agit d'un type 16 bits) wchar_t.

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

Construit une vue de chaîne sur str avec la longueur len.

La plage [str,len) doit rester valide pendant toute la durée de vie de cet objet "string view".

Transmettre nullptr en tant que str est sûr si len est également 0, et résulte en une vue de chaîne nulle.

Le comportement est indéfini si len est négatif ou, lorsqu'il est positif, si str est nullptr.

Contraintes

Participe à la résolution des surcharges uniquement si Char est un type de caractère compatible. Les types de caractères compatibles sont les suivants : QChar, ushort, char16_t et (sur les plates-formes, telles que Windows, où il s'agit d'un type 16 bits) wchar_t.

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

Remplace les occurrences de %N dans cette chaîne par l'argument correspondant de args. Les arguments ne sont pas positionnels : le premier des args remplace le %N par le N le plus bas (tous), le deuxième des args le %N par le N le plus bas suivant, etc.

Args peut consister en tout ce qui se convertit implicitement en QAnyStringView.

Note : Dans les versions de Qt antérieures à la 6.9, QAnyStringView et les chaînes UTF-8 (QUtf8StringView, QByteArray, QByteArrayView, const char8_t*, etc) n'étaient pas prises en charge en tant que args.

Voir aussi QString::arg().

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

Renvoie le caractère à la position n dans cette vue de chaîne de caractères.

Le comportement est indéfini si n est négatif ou supérieur à size().

Voir aussi operator[](), front() et back().

[constexpr] QChar QStringView::back() const

Renvoie le dernier caractère de la vue de la chaîne de caractères. Identique à last().

Cette fonction est fournie pour la compatibilité STL.

Attention : L'appel de cette fonction sur une vue de chaîne vide constitue un comportement indéfini.

Voir aussi front(), first() et last().

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

Renvoie un itérateur constant de style STL pointant sur le premier caractère de la vue de la chaîne.

Cette fonction est fournie à des fins de compatibilité STL.

Voir aussi end(), constBegin(), cbegin(), rbegin() et data().

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

Identique à begin().

Cette fonction est fournie pour la compatibilité STL.

Voir aussi cend(), begin(), constBegin(), crbegin() et data().

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

Identique à end().

Cette fonction est fournie pour la compatibilité STL.

Voir aussi cbegin(), end(), constEnd() et crend().

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

Raccourcit la vue de cette chaîne par length caractères.

Identique à *this = left(size() - length).

Remarque : le comportement est indéfini lorsque length < 0 ou length > size().

Voir aussi sliced(), left(), right(), chopped(), truncate() et slice().

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

Renvoie la sous-chaîne de longueur size() - length commençant au début de cet objet.

Identique à left(size() - length).

Remarque : le comportement est indéfini lorsque length < 0 ou length > size().

Voir aussi sliced(), left(), right(), chop(), truncate() et slice().

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

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

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

Compare cette vue de chaîne à la vue de chaîne Latin-1 l1, ou au caractère ch. Renvoie un nombre entier négatif si cette vue de chaîne est inférieure à l1 ou ch, un nombre entier positif si elle est supérieure à l1 ou ch, et zéro si elles sont égales.

Si cs est Qt::CaseSensitive (par défaut), la comparaison est sensible à la casse ; sinon, la comparaison est insensible à la casse.

Voir aussi operator==(), operator<() et operator>().

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

Compare cette vue de chaîne avec la vue de chaîne str et renvoie un nombre entier négatif si cette vue de chaîne est inférieure à str, un nombre entier positif si elle est supérieure à str, et zéro si elles sont égales.

Si cs est Qt::CaseSensitive (par défaut), la comparaison est sensible à la casse ; sinon, la comparaison est insensible à la casse.

Voir aussi operator==(), operator<() et operator>().

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

Compare cette vue de chaîne avec QUtf8StringView str et renvoie un nombre entier négatif si cette vue de chaîne est inférieure à str, un nombre entier positif si elle est supérieure à str, et zéro si elles sont égales.

Si cs est Qt::CaseSensitive (par défaut), la comparaison est sensible à la casse ; sinon, la comparaison est insensible à la casse.

Cette fonction a été introduite dans Qt 6.5.

Voir aussi operator==(), operator<() et operator>().

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

Identique à begin().

Cette fonction a été introduite dans Qt 6.1.

Voir aussi constEnd(), begin(), cbegin(), crbegin(), et data().

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

Renvoie un pointeur constant sur le premier caractère de la vue de la chaîne.

Note : Le tableau de caractères représenté par la valeur de retour n'est pas à terminaison nulle.

Cette fonction a été introduite dans Qt 6.0.

Voir aussi data(), begin(), end() et utf16().

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

Identique à end().

Cette fonction a été introduite dans Qt 6.1.

Voir aussi constBegin(), end(), cend(), et crend().

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

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

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

Renvoie true si cette vue de chaîne contient une occurrence de la chaîne UTF-16 visualisée par str, de la chaîne Latin-1 visualisée par l1, ou du caractère ch respectivement ; sinon, renvoie false.

Si cs est Qt::CaseSensitive (par défaut), la recherche est sensible à la casse ; sinon, la recherche est insensible à la casse.

Voir aussi indexOf().

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

Renvoie true si l'expression régulière re correspond quelque part dans cette vue de chaîne ; sinon, renvoie false.

Si la correspondance est réussie et que rmatch n'est pas nullptr, elle écrit également les résultats de la correspondance dans l'objet QRegularExpressionMatch pointé par rmatch.

Cette fonction a été introduite dans Qt 6.1.

Voir aussi QRegularExpression::match().

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

Renvoie le nombre de fois où l'expression régulière re correspond à la vue de la chaîne de caractères.

Pour des raisons historiques, cette fonction compte les correspondances qui se chevauchent. Ce comportement est différent de la simple itération sur les correspondances dans la vue de la chaîne de caractères en utilisant QRegularExpressionMatchIterator.

Cette fonction a été introduite dans Qt 6.1.

Voir aussi QRegularExpression::globalMatch().

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

Renvoie le nombre d'occurrences du caractère ch dans la vue de la chaîne.

Si cs est Qt::CaseSensitive (par défaut), la recherche est sensible à la casse ; sinon, la recherche est insensible à la casse.

Cette fonction surcharge QStringView::count().

Cette fonction a été introduite dans Qt 6.0.

Voir aussi QString::count(), contains() et indexOf().

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

Renvoie le nombre d'occurrences (pouvant se chevaucher) de la chaîne Latin-1 visualisée par l1 dans cette vue de chaîne.

Si cs est Qt::CaseSensitive (par défaut), la recherche est sensible à la casse ; sinon, la recherche est insensible à la casse.

Cette fonction surcharge QStringView::count().

Cette fonction a été introduite dans Qt 6.4.

Voir aussi QString::count(), contains() et indexOf().

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

Renvoie le nombre d'occurrences (pouvant se chevaucher) de la vue de chaîne str dans cette vue de chaîne.

Si cs est Qt::CaseSensitive (par défaut), la recherche est sensible à la casse ; sinon, la recherche est insensible à la casse.

Cette fonction surcharge QStringView::count().

Cette fonction a été introduite dans Qt 6.0.

Voir aussi QString::count(), contains() et indexOf().

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

Identique à rbegin().

Cette fonction est fournie pour la compatibilité STL.

Voir aussi crend(), rbegin() et cbegin().

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

Identique à rend().

Cette fonction est fournie pour la compatibilité STL.

Voir aussi crbegin(), rend() et cend().

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

Renvoie un pointeur constant sur le premier caractère de la vue de la chaîne.

Remarque : Le tableau de caractères représenté par la valeur de retour n'est pas à terminaison nulle.

Voir aussi begin(), end() et utf16().

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

Renvoie si cette vue de chaîne est vide, c'est-à-dire si size() == 0.

Cette fonction est fournie à des fins de compatibilité STL.

Voir aussi isEmpty(), isNull(), size() et length().

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

Renvoie un itérateur constant de style STL pointant vers le caractère imaginaire situé après le dernier caractère de la liste.

Cette fonction est fournie pour la compatibilité STL.

Voir aussi begin(), constEnd(), cend(), et rend().

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

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

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

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

Renvoie true si cette vue de chaîne se termine par la chaîne UTF-16 vue par str, la chaîne Latin-1 vue par l1, ou le caractère ch respectivement ; sinon, renvoie false.

Si cs est Qt::CaseSensitive (par défaut), la recherche est sensible à la casse ; sinon, la recherche est insensible à la casse.

Voir aussi startsWith().

[constexpr] QChar QStringView::first() const

Renvoie le premier caractère de la vue de la chaîne de caractères. Identique à front().

Cette fonction est fournie à des fins de compatibilité avec d'autres conteneurs Qt.

Attention : L'appel de cette fonction sur une vue de chaîne vide constitue un comportement indéfini.

Voir aussi front(), back(), et last().

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

Renvoie une vue de chaîne qui pointe vers les premiers n caractères de cette vue de chaîne.

Remarque : le comportement est indéfini lorsque n < 0 ou n > size().

Cette fonction a été introduite dans Qt 6.0.

Voir aussi last(), sliced(), startsWith(), chopped(), chop(), truncate() et slice().

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

Construit une vue de chaîne sur le littéral de chaîne de caractères complet string, y compris toute fin de chaîne Char(0). Si vous ne voulez pas que le terminateur null soit inclus dans la vue, vous pouvez chop() l'enlever lorsque vous êtes certain qu'il se trouve à la fin. Vous pouvez également utiliser la surcharge du constructeur en prenant un littéral de tableau qui créera une vue jusqu'au premier terminateur nul dans les données, mais sans l'inclure.

string doit rester valide pendant toute la durée de vie de cet objet de vue de chaîne.

Cette fonction fonctionnera avec n'importe quel littéral de tableau si Char est un type de caractère compatible. Les types de caractères compatibles sont les suivants : QChar, ushort, char16_t et (sur les plates-formes, telles que Windows, où il s'agit d'un type 16 bits) wchar_t.

[constexpr] QChar QStringView::front() const

Renvoie le premier caractère de la vue de la chaîne de caractères. Identique à first().

Cette fonction est fournie pour la compatibilité STL.

Attention : L'appel de cette fonction sur une vue de chaîne vide constitue un comportement indéfini.

Voir aussi back(), first() et last().

[noexcept] qsizetype QStringView::indexOf(QStringView str, 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(QChar ch, qsizetype from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Renvoie la position d'index de la première occurrence de la chaîne UTF-16 vue par str, de la chaîne Latin-1 vue par l1, ou du caractère ch respectivement, dans cette vue de chaîne, en cherchant vers l'avant à partir de la position d'index from. Retourne -1 si str, l1 ou ch n'est pas trouvé, respectivement.

Si cs est Qt::CaseSensitive (par défaut), la recherche est sensible à la casse ; sinon, la recherche est insensible à la casse.

Si from vaut -1, la recherche commence au dernier caractère ; s'il vaut -2, à l'avant-dernier caractère et ainsi de suite.

Voir aussi QString::indexOf().

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

Renvoie la position d'index de la première correspondance de l'expression régulière re dans la vue de la chaîne, en cherchant vers l'avant à partir de la position d'index from. Renvoie -1 si re ne correspond à rien.

Si la correspondance est réussie et que rmatch n'est pas nullptr, elle écrit également les résultats de la correspondance dans l'objet QRegularExpressionMatch pointé par rmatch.

Remarque : en raison du fonctionnement de l'algorithme de correspondance des expressions régulières, cette fonction effectue des correspondances répétées depuis le début de la vue de la chaîne jusqu'à la position from.

Cette fonction a été introduite dans Qt 6.1.

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

Renvoie si cette vue de chaîne est vide - c'est-à-dire si size() == 0.

Cette fonction est fournie à des fins de compatibilité avec d'autres conteneurs Qt.

Voir aussi empty(), isNull(), size() et length().

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

Renvoie true si cette vue est identique à son pliage en minuscules.

Notez que cela ne signifie pas que la vue de la chaîne ne contient pas de lettres majuscules (certaines lettres majuscules n'ont pas de pliage minuscule ; elles sont laissées inchangées par toString().toLower())). Pour plus d'informations, reportez-vous à la norme Unicode, section 3.13.

Cette fonction a été introduite dans Qt 6.7.

Voir aussi QChar::toLower() et isUpper().

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

Retourne si cette vue de chaîne est nulle - c'est-à-dire si data() == nullptr.

Cette fonction est fournie à des fins de compatibilité avec d'autres conteneurs Qt.

Voir aussi empty(), isEmpty(), size() et length().

[noexcept] bool QStringView::isRightToLeft() const

Renvoie true si la vue de la chaîne est lue de droite à gauche.

Voir aussi QString::isRightToLeft().

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

Renvoie true si cette vue est identique à son pliage en majuscules.

Notez que cela ne signifie pas que la vue de la chaîne ne contient pas de lettres minuscules (certaines lettres minuscules n'ont pas de pliage en majuscules ; elles sont laissées inchangées par toString().toUpper()). Pour plus d'informations, reportez-vous à la norme Unicode, section 3.13.

Cette fonction a été introduite dans Qt 6.7.

Voir aussi QChar::toUpper() et isLower().

[noexcept] bool QStringView::isValidUtf16() const

Renvoie true si la vue de la chaîne contient des données encodées UTF-16 valides, ou false dans le cas contraire.

Notez que cette fonction n'effectue aucune validation particulière des données ; elle vérifie simplement si elles peuvent être décodées avec succès à partir d'UTF-16. Les données sont supposées être dans l'ordre des octets de l'hôte ; la présence d'un BOM n'a pas de sens.

Voir aussi QString::isValidUtf16().

[constexpr] QChar QStringView::last() const

Renvoie le dernier caractère de la vue de la chaîne de caractères. Identique à back().

Cette fonction est fournie à des fins de compatibilité avec d'autres conteneurs Qt.

Attention : L'appel de cette fonction sur une vue de chaîne vide constitue un comportement indéfini.

Voir aussi back(), front(), et first().

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

Renvoie une vue de chaîne qui pointe vers les derniers n caractères de cette vue de chaîne.

Remarque : le comportement est indéfini lorsque n < 0 ou n > size().

Cette fonction a été introduite dans Qt 6.0.

Voir aussi first(), sliced(), endsWith(), chopped(), chop(), truncate() et slice().

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

Renvoie la position d'index de la dernière correspondance de l'expression régulière re dans la vue de la chaîne. Retourne -1 si re ne correspond à rien.

Si la correspondance est réussie et que rmatch n'est pas nullptr, elle écrit également les résultats de la correspondance dans l'objet QRegularExpressionMatch pointé par rmatch.

Remarque : en raison du fonctionnement de l'algorithme de correspondance des expressions régulières, cette fonction effectue des correspondances répétées depuis le début de la vue de la chaîne jusqu'à ce que la fin de la vue de la chaîne soit atteinte.

Cette fonction a été introduite dans Qt 6.2.

[noexcept] qsizetype QStringView::lastIndexOf(QStringView str, 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(QChar ch, qsizetype from, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Renvoie la position d'index de la dernière occurrence de la chaîne UTF-16 vue par str, de la chaîne Latin-1 vue par l1, ou du caractère ch respectivement, dans cette vue de chaîne, en cherchant en arrière à partir de la position d'index from.

Si from est -1, la recherche commence au dernier caractère ; s'il est -2, à l'avant-dernier caractère et ainsi de suite.

Retourne -1 si str, l1 ou ch n'est pas trouvé, respectivement.

Si cs est Qt::CaseSensitive (par défaut), la recherche est sensible à la casse ; sinon, la recherche est insensible à la casse.

Remarque : lors de la recherche d'une chaîne de longueur 0 str ou l1, la correspondance à la fin des données est exclue de la recherche par une valeur négative from, même si -1 est normalement considéré comme une recherche à partir de la fin de la vue de la chaîne : la correspondance à la fin se trouve après le dernier caractère, elle est donc exclue. Pour inclure une telle correspondance finale vide, il faut soit donner une valeur positive à from, soit omettre complètement le paramètre from.

Voir aussi QString::lastIndexOf().

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

Renvoie la position d'index de la dernière correspondance de l'expression régulière re dans la vue de la chaîne, qui commence avant la position d'index from.

Si from vaut -1, la recherche commence au dernier caractère ; s'il vaut -2, à l'avant-dernier caractère et ainsi de suite.

Retourne -1 si re ne correspond à rien.

Si la correspondance est réussie et que rmatch n'est pas nullptr, il écrit également les résultats de la correspondance dans l'objet QRegularExpressionMatch pointé par rmatch.

Remarque : en raison du fonctionnement de l'algorithme de correspondance des expressions régulières, cette fonction effectue des correspondances répétées depuis le début de la vue de la chaîne jusqu'à la position from.

Remarque : lors de la recherche d'une expression régulière re qui peut correspondre à 0 caractère, la correspondance à la fin des données est exclue de la recherche par une valeur négative from, même si l'on considère normalement que -1 effectue une recherche à partir de la fin de la vue de la chaîne : la correspondance à la fin se trouve après le dernier caractère, elle est donc exclue. Pour inclure une telle correspondance finale vide, il faut soit donner une valeur positive à from, soit omettre complètement le paramètre from.

Cette fonction a été introduite dans Qt 6.1.

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

Cette fonction surcharge QStringView::lastIndexOf().

Cette fonction a été introduite dans Qt 6.3.

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

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

Renvoie la position d'index de la dernière occurrence de la chaîne UTF-16 visualisée par str ou de la chaîne Latin-1 visualisée par l1 respectivement, dans cette vue de chaîne en cherchant en arrière à partir du dernier caractère de cette vue de chaîne. Retourne -1 si str ou l1 n'est pas trouvé, respectivement.

Si cs est Qt::CaseSensitive (par défaut), la recherche est sensible à la casse ; sinon, la recherche est insensible à la casse.

Ces fonctions ont été introduites dans Qt 6.2.

Voir aussi QString::lastIndexOf().

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

Identique à size().

Cette fonction est fournie à des fins de compatibilité avec d'autres conteneurs Qt.

Voir aussi empty(), isEmpty(), isNull() et size().

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

Compare cette vue de chaîne avec la vue de chaîne other et renvoie un entier inférieur, égal ou supérieur à zéro si cette vue de chaîne est inférieure, égale ou supérieure à la vue de chaîne other.

La comparaison est effectuée en fonction des paramètres locaux et de la plate-forme. Utilisez cette fonction pour présenter à l'utilisateur des listes triées de chaînes de caractères.

Cette fonction a été introduite dans Qt 6.4.

Voir aussi Comparing Strings.

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

Il renvoie le nombre maximum d'éléments que la vue peut théoriquement représenter. En pratique, ce nombre peut être beaucoup plus petit, limité par la quantité de mémoire disponible dans le système.

Cette fonction a été introduite dans Qt 6.8.

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

Cette fonction est fournie pour la compatibilité STL.

Retourne maxSize().

Cette fonction a été introduite dans Qt 6.8.

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

Renvoie un itérateur inverse de style STL pointant sur le premier caractère de la vue de la chaîne, dans l'ordre inverse.

Cette fonction est fournie pour la compatibilité STL.

Voir aussi rend(), crbegin(), et begin().

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

Renvoie un itérateur inversé de style STL pointant sur un caractère après le dernier dans la vue de la chaîne, dans l'ordre inverse.

Cette fonction est fournie pour la compatibilité STL.

Voir aussi rbegin(), crend(), et end().

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

Renvoie la taille de cette vue de chaîne, en unités de code UTF-16 (c'est-à-dire que les paires de substituts comptent pour deux dans le cadre de cette fonction, comme dans QString).

Voir aussi empty(), isEmpty(), isNull() et length().

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

Modifie cette vue de chaîne pour qu'elle commence à la position pos et s'étende aux points de code n.

Remarque : le comportement est indéfini lorsque pos < 0, n < 0 ou pos + n > size().

Cette fonction a été introduite dans Qt 6.8.

Voir aussi sliced(), first(), last(), chopped(), chop() et truncate().

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

Modifie cette vue de chaîne pour qu'elle commence à la position pos et s'étende jusqu'à la fin.

Remarque : le comportement est indéfini lorsque pos < 0 ou pos > size().

Il s'agit d'une fonction surchargée.

Cette fonction a été introduite dans Qt 6.8.

Voir aussi sliced(), first(), last(), chopped(), chop() et truncate().

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

Renvoie une vue de chaîne qui pointe vers n caractères de cette vue de chaîne, à partir de la position pos.

Remarque : le comportement est indéfini lorsque pos < 0, n < 0 ou pos + n > size().

Cette fonction a été introduite dans Qt 6.0.

Voir aussi first(), last(), chopped(), chop(), truncate() et slice().

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

Renvoie une vue de chaîne de caractères commençant à la position pos dans cet objet et s'étendant jusqu'à son extrémité.

Remarque : le comportement est indéfini lorsque pos < 0 ou pos > size().

Il s'agit d'une fonction surchargée.

Cette fonction a été introduite dans Qt 6.0.

Voir aussi first(), last(), chopped(), chop(), truncate() et slice().

[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

Divise la vue en sous-chaînes à chaque fois que sep apparaît, et renvoie la liste de ces vues de chaînes.

Voir QString::split() pour savoir comment sep, behavior et cs interagissent pour former le résultat.

Remarque : toutes les vues renvoyées sont valides tant que les données référencées par cette vue de chaîne sont valides. La destruction des données entraînera la perte de toutes les vues.

Ces fonctions ont été introduites dans Qt 6.0.

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

Fractionne la chaîne en vues de sous-chaînes partout où l'expression régulière re correspond, et renvoie la liste de ces chaînes. Si re ne correspond à rien dans la chaîne, split() renvoie une liste à un seul élément contenant cette chaîne comme vue.

Remarque : les vues de la liste renvoyée sont des vues secondaires de cette vue ; en tant que telles, elles font référence aux mêmes données qu'elle et ne restent valides que tant que ces données restent actives.

Il s'agit d'une fonction surchargée.

Cette fonction a été introduite dans Qt 6.0.

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

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

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

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

Renvoie true si cette vue de chaîne commence par la chaîne UTF-16 visualisée par str, la chaîne Latin-1 visualisée par l1, ou le caractère ch respectivement ; sinon, renvoie false.

Si cs est Qt::CaseSensitive (par défaut), la recherche est sensible à la casse ; sinon, la recherche est insensible à la casse.

Voir aussi endsWith().

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

Crée une CFString à partir de cette QStringView.

L'appelant est propriétaire de la CFString et est responsable de sa libération.

Remarque : cette fonction n'est disponible que sur macOS et iOS.

Cette fonction a été introduite dans Qt 6.0.

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

Renvoie la vue de la chaîne convertie en une valeur double.

Renvoie une infinité si la conversion déborde ou 0.0 si la conversion échoue pour d'autres raisons (par exemple, un débordement).

Si ok n'est pas nullptr, l'échec est signalé par la définition de *ok en false, et la réussite par la définition de *ok en true.

La conversion des chaînes de caractères se fera toujours dans la locale 'C'. Pour une conversion dépendante de la locale, utilisez QLocale::toDouble()

Pour des raisons historiques, cette fonction ne gère pas les séparateurs de groupes de milliers. Si vous devez convertir de tels nombres, utilisez QLocale::toDouble().

Cette fonction a été introduite dans Qt 6.0.

Voir aussi QString::toDouble().

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

Renvoie la vue de la chaîne convertie en une valeur float.

Renvoie une infinité si la conversion déborde ou 0.0 si la conversion échoue pour d'autres raisons (par exemple, un débordement).

Si ok n'est pas nullptr, l'échec est signalé par la définition de *ok en false, et la réussite par la définition de *ok en true.

La conversion des chaînes de caractères se fera toujours dans la locale 'C'. Pour une conversion dépendante de la locale, utilisez QLocale::toFloat()

Cette fonction a été introduite dans Qt 6.0.

Voir aussi QString::toFloat().

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

Renvoie la vue de la chaîne convertie en int en utilisant la base base, qui est 10 par défaut et doit être comprise entre 2 et 36, ou 0. Renvoie 0 si la conversion échoue.

Si ok n'est pas nullptr, l'échec est signalé par l'affectation de *ok à false, et la réussite par l'affectation de *ok à true.

Si base vaut 0, la convention du langage C est utilisée : si la vue de la chaîne commence par "0x", la base 16 est utilisée ; sinon, si la vue de la chaîne commence par "0", la base 8 est utilisée ; sinon, la base 10 est utilisée.

La conversion de la chaîne se fera toujours dans la locale 'C'. Pour une conversion dépendante de la locale, utilisez QLocale::toInt()

Cette fonction a été introduite dans Qt 6.0.

Voir aussi QString::toInt().

QByteArray QStringView::toLatin1() const

Renvoie une représentation latine-1 de la chaîne sous forme de QByteArray.

Le comportement est indéfini si la chaîne contient des caractères non latins1.

Voir aussi toUtf8(), toLocal8Bit(), et QStringEncoder.

QByteArray QStringView::toLocal8Bit() const

Renvoie une représentation locale sur 8 bits de la chaîne sous forme de QByteArray.

Sur les systèmes Unix, cela équivaut à toUtf8(), sur Windows, c'est la page de code actuelle du système qui est utilisée.

Le comportement est indéfini si la chaîne contient des caractères non pris en charge par l'encodage 8 bits de la locale.

Voir aussi toLatin1(), toUtf8(), et QStringEncoder.

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

Renvoie la vue de la chaîne convertie en long en utilisant la base base, qui est 10 par défaut et doit être comprise entre 2 et 36, ou 0. Renvoie 0 si la conversion échoue.

Si ok n'est pas nullptr, l'échec est signalé par l'affectation de *ok à false, et la réussite par l'affectation de *ok à true.

Si base vaut 0, la convention du langage C est utilisée : si la vue de la chaîne commence par "0x", la base 16 est utilisée ; sinon, si la vue de la chaîne commence par "0", la base 8 est utilisée ; sinon, la base 10 est utilisée.

La conversion de la chaîne se fera toujours dans la locale 'C'. Pour une conversion dépendante de la locale, utilisez QLocale::toLong()

Cette fonction a été introduite dans Qt 6.0.

Voir aussi QString::toLong().

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

Renvoie la vue de la chaîne convertie en long long en utilisant la base base, qui est 10 par défaut et doit être comprise entre 2 et 36, ou 0. Renvoie 0 si la conversion échoue.

Si ok n'est pas nullptr, l'échec est signalé par la définition de *ok en false, et la réussite par la définition de *ok en true.

Si base vaut 0, la convention du langage C est utilisée : si la vue de la chaîne commence par "0x", la base 16 est utilisée ; sinon, si la vue de la chaîne commence par "0", la base 8 est utilisée ; sinon, la base 10 est utilisée.

La conversion de la chaîne se fera toujours dans la locale 'C'. Pour une conversion dépendante de la locale, utilisez QLocale::toLongLong()

Cette fonction a été introduite dans Qt 6.0.

Voir aussi QString::toLongLong().

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

Crée une NSString à partir de cette QStringView.

La NSString est libérée automatiquement.

Remarque : cette fonction n'est disponible que sur macOS et iOS.

Cette fonction a été introduite dans Qt 6.0.

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

Renvoie la vue de la chaîne convertie en short en utilisant la base base, qui est 10 par défaut et doit être comprise entre 2 et 36, ou 0. Renvoie 0 si la conversion échoue.

Si ok n'est pas nullptr, l'échec est signalé par l'affectation de *ok à false, et la réussite par l'affectation de *ok à true.

Si base vaut 0, la convention du langage C est utilisée : si la vue de la chaîne commence par "0x", la base 16 est utilisée ; sinon, si la vue de la chaîne commence par "0", la base 8 est utilisée ; sinon, la base 10 est utilisée.

La conversion de la chaîne se fera toujours dans la locale 'C'. Pour une conversion dépendante de la locale, utilisez QLocale::toShort()

Cette fonction a été introduite dans Qt 6.0.

Voir aussi QString::toShort().

QString QStringView::toString() const

Renvoie une copie profonde des données de cette vue de chaîne sous forme de QString.

La valeur de retour sera la valeur null QString si et seulement si cette vue de chaîne est null.

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

Renvoie la vue de la chaîne convertie en unsigned int en utilisant la base base, qui est 10 par défaut et doit être comprise entre 2 et 36, ou 0. Renvoie 0 si la conversion échoue.

Si ok n'est pas nullptr, l'échec est signalé par l'affectation de *ok à false, et la réussite par l'affectation de *ok à true.

Si base vaut 0, la convention du langage C est utilisée : si la vue de la chaîne commence par "0x", la base 16 est utilisée ; sinon, si la vue de la chaîne commence par "0", la base 8 est utilisée ; sinon, la base 10 est utilisée.

La conversion de la chaîne se fera toujours dans la locale 'C'. Pour une conversion dépendante de la locale, utilisez QLocale::toUInt()

Cette fonction a été introduite dans Qt 6.0.

Voir aussi QString::toUInt().

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

Renvoie la vue de la chaîne convertie en unsigned long en utilisant la base base, qui est 10 par défaut et doit être comprise entre 2 et 36, ou 0. Renvoie 0 si la conversion échoue.

Si ok n'est pas nullptr, l'échec est signalé par l'affectation de *ok à false, et la réussite par l'affectation de *ok à true.

Si base vaut 0, la convention du langage C est utilisée : si la vue de la chaîne commence par "0x", la base 16 est utilisée ; sinon, si la vue de la chaîne commence par "0", la base 8 est utilisée ; sinon, la base 10 est utilisée.

La conversion de la chaîne se fera toujours dans la locale 'C'. Pour une conversion dépendante de la locale, utilisez QLocale::toULongLong()

Cette fonction a été introduite dans Qt 6.0.

Voir aussi QString::toULong().

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

Renvoie la vue de la chaîne convertie en unsigned long long en utilisant la base base, qui est 10 par défaut et doit être comprise entre 2 et 36, ou 0. Renvoie 0 si la conversion échoue.

Si ok n'est pas nullptr, l'échec est signalé par l'affectation de *ok à false, et la réussite par l'affectation de *ok à true.

Si base vaut 0, la convention du langage C est utilisée : si la vue de la chaîne commence par "0x", la base 16 est utilisée ; sinon, si la vue de la chaîne commence par "0", la base 8 est utilisée ; sinon, la base 10 est utilisée.

La conversion de la chaîne se fera toujours dans la locale 'C'. Pour une conversion dépendante de la locale, utilisez QLocale::toULongLong()

Cette fonction a été introduite dans Qt 6.0.

Voir aussi QString::toULongLong().

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

Renvoie la vue de la chaîne convertie en unsigned short en utilisant la base base, qui est 10 par défaut et doit être comprise entre 2 et 36, ou 0. Renvoie 0 si la conversion échoue.

Si ok n'est pas nullptr, l'échec est signalé par l'affectation de *ok à false, et la réussite par l'affectation de *ok à true.

Si base vaut 0, la convention du langage C est utilisée : si la vue de la chaîne commence par "0x", la base 16 est utilisée ; sinon, si la vue de la chaîne commence par "0", la base 8 est utilisée ; sinon, la base 10 est utilisée.

La conversion de la chaîne se fera toujours dans la locale 'C'. Pour une conversion dépendante de la locale, utilisez QLocale::toUShort()

Cette fonction a été introduite dans Qt 6.0.

Voir aussi QString::toUShort().

QList<uint> QStringView::toUcs4() const

Renvoie une représentation UCS-4/UTF-32 de la vue de la chaîne sous forme de QList<uint>.

UCS-4 est un codec Unicode et est donc sans perte. Tous les caractères de cette vue de chaîne seront encodés en UCS-4. Toute séquence invalide d'unités de code dans cette vue de chaîne est remplacée par le caractère de remplacement Unicode (QChar::ReplacementCharacter, qui correspond à U+FFFD).

La liste renvoyée n'est pas terminée par 0.

Voir aussi toUtf8(), toLatin1(), toLocal8Bit() et QStringEncoder.

QByteArray QStringView::toUtf8() const

Retourne une représentation UTF-8 de la vue de la chaîne sous forme de QByteArray.

UTF-8 est un codec Unicode et peut représenter tous les caractères d'une chaîne Unicode comme QString.

Voir aussi toLatin1(), toLocal8Bit() et QStringEncoder.

qsizetype QStringView::toWCharArray(wchar_t *array) const

Transcrit cette vue de chaîne dans le tableau donné array.

L'appelant doit s'assurer que array est suffisamment grand pour contenir l'encodage wchar_t de cette vue de chaîne (allouer le tableau avec la même longueur que la vue de chaîne est toujours suffisant). Le tableau est encodé en UTF-16 sur les plateformes où wchar_t a une largeur de 2 octets (par exemple Windows) ; sinon (systèmes Unix), wchar_t est supposé avoir une largeur de 4 octets et les données sont écrites en UCS-4.

Remarque : cette fonction n'écrit pas de terminaison nulle à la fin de array.

Renvoie le nombre d'entrées wchar_t écrites dans array.

Voir aussi QString::toWCharArray().

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

Divise la chaîne en sous-chaînes à chaque fois que sep apparaît, et renvoie une séquence paresseuse de ces chaînes.

Équivalent à

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

sauf qu'il fonctionne sans la déduction d'argument de modèle de classe C++17 (CTAD) activée dans le compilateur.

Voir QStringTokenizer pour savoir comment sep et flags interagissent pour former le résultat.

Note : Bien que cette fonction renvoie QStringTokenizer, vous ne devez jamais, au grand jamais, nommer ses arguments de modèle explicitement. Si vous pouvez utiliser la déduction d'arguments de modèle de classe C++17 (CTAD), vous pouvez écrire

QStringTokenizer result = sv.tokenize(sep);

(sans arguments de modèle). Si vous ne pouvez pas utiliser la CTAD C++17, vous devez stocker la valeur de retour uniquement dans les variables auto:

auto result = sv.tokenize(sep);

En effet, les arguments de modèle de QStringTokenizer dépendent très subtilement de la surcharge spécifique de tokenize() à partir de laquelle ils sont renvoyés, et ils ne correspondent généralement pas au type utilisé pour le séparateur.

Ces fonctions ont été introduites dans Qt 6.0.

Note : Cette fonction est noexcept lorsque noexcept(qTokenize(std::declval<const QStringView&>(), std::forward<Needle>(needle), flags...)) est true.

Voir aussi QStringTokenizer et qTokenize().

[noexcept] QStringView QStringView::trimmed() const

Supprime les espaces blancs de début et de fin et renvoie le résultat.

Par espace blanc, on entend tout caractère pour lequel QChar::isSpace() renvoie true. Cela inclut les caractères ASCII '\t', '\n', '\v', '\f', '\r' et ' '.

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

Tronque la vue de cette chaîne à la longueur length.

Identique à *this = left(length).

Remarque : le comportement est indéfini lorsque length < 0 ou length > size().

Voir aussi sliced(), left(), right(), chopped() et chop().

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

Renvoie un pointeur constant sur le premier caractère de la vue de la chaîne.

Remarque : Le tableau de caractères représenté par la valeur de retour n'est pas à terminaison nulle.

storage_type est char16_t.

Voir aussi begin(), end() et data().

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

Convertit cet objet QStringView en un objet std::u16string_view. La vue renvoyée aura le même pointeur de données et la même longueur que cette vue.

Cette fonction a été introduite dans Qt 6.7.

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

Renvoie le caractère à la position n dans cette vue de chaîne de caractères.

Le comportement est indéfini si n est négatif ou supérieur à size().

Voir également at(), front() et back().

Non-membres apparentés

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

Renvoie la valeur de hachage pour key, en utilisant seed comme base de calcul.

[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)

Opérateurs permettant de comparer lhs à rhs.

Voir aussi compare().

© 2026 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.