Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QStringView Class Reference

\inmodule QtCore More...

#include <qstringview.h>

+ Collaboration diagram for QStringView:

Public Types

typedef char16_t storage_type
 Alias for {char16_t}.
 
typedef const QChar value_type
 Alias for {const QChar}.
 
typedef std::ptrdiff_t difference_type
 Alias for {std::ptrdiff_t}.
 
typedef qsizetype size_type
 Alias for qsizetype.
 
typedef value_typereference
 Alias for {value_type &}.
 
typedef value_typeconst_reference
 Alias for {value_type &}.
 
typedef value_typepointer
 Alias for {value_type *}.
 
typedef value_typeconst_pointer
 Alias for {value_type *}.
 
typedef pointer iterator
 This typedef provides an STL-style const iterator for QStringView.
 
typedef const_pointer const_iterator
 This typedef provides an STL-style const iterator for QStringView.
 
typedef std::reverse_iterator< iteratorreverse_iterator
 This typedef provides an STL-style const reverse iterator for QStringView.
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 This typedef provides an STL-style const reverse iterator for QStringView.
 

Public Member Functions

constexpr QStringView () noexcept
 Constructs a null string view.
 
constexpr QStringView (std::nullptr_t) noexcept
 Constructs a null string view.
 
template<typename Char , if_compatible_char< Char > = true>
constexpr QStringView (const Char *str, qsizetype len)
 Constructs a string view on str with length len.
 
template<typename Char , if_compatible_char< Char > = true>
constexpr QStringView (const Char *f, const Char *l)
 Constructs a string view on first with length (last - first).
 
template<typename Pointer , if_compatible_pointer< Pointer > = true>
constexpr QStringView (const Pointer &str) noexcept
 
template<typename String , if_compatible_qstring_like< String > = true>
 QStringView (const String &str) noexcept
 
template<typename Container , if_compatible_container< Container > = true>
constexpr Q_ALWAYS_INLINE QStringView (const Container &c) noexcept
 
QString toString () const
 Returns a deep copy of this string view's data as a QString.
 
constexpr qsizetype size () const noexcept
 Returns the size of this string view, in UTF-16 code units (that is, surrogate pairs count as two for the purposes of this function, the same as in QString).
 
const_pointer data () const noexcept
 
const_pointer constData () const noexcept
 
constexpr const storage_typeutf16 () const noexcept
 
constexpr QChar operator[] (qsizetype n) const
 Returns the character at position n in this string view.
 
template<typename... Args>
QString arg (Args &&...args) const
 
QByteArray toLatin1 () const
 Returns a Latin-1 representation of the string as a QByteArray.
 
QByteArray toUtf8 () const
 Returns a UTF-8 representation of the string view as a QByteArray.
 
QByteArray toLocal8Bit () const
 Returns a local 8-bit representation of the string as a QByteArray.
 
QList< uinttoUcs4 () const
 Returns a UCS-4/UTF-32 representation of the string view as a QList<uint>.
 
constexpr QChar at (qsizetype n) const noexcept
 Returns the character at position n in this string view.
 
constexpr QStringView mid (qsizetype pos, qsizetype n=-1) const noexcept
 Returns the substring of length length starting at position start in this object.
 
constexpr QStringView left (qsizetype n) const noexcept
 
constexpr QStringView right (qsizetype n) const noexcept
 
constexpr QStringView first (qsizetype n) const noexcept
 
constexpr QStringView last (qsizetype n) const noexcept
 
constexpr QStringView sliced (qsizetype pos) const noexcept
 
constexpr QStringView sliced (qsizetype pos, qsizetype n) const noexcept
 
constexpr QStringView chopped (qsizetype n) const noexcept
 Returns the substring of length size() - length starting at the beginning of this object.
 
constexpr void truncate (qsizetype n) noexcept
 Truncates this string view to length length.
 
constexpr void chop (qsizetype n) noexcept
 Truncates this string view by length characters.
 
QStringView trimmed () const noexcept
 Strips leading and trailing whitespace and returns the result.
 
template<typename Needle , typename... Flags>
constexpr auto tokenize (Needle &&needle, Flags...flags) const noexcept(noexcept(qTokenize(std::declval< const QStringView & >(), std::forward< Needle >(needle), flags...))) -> decltype(qTokenize(*this, std::forward< Needle >(needle), flags...))
 
int compare (QStringView other, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
int compare (QLatin1StringView other, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
int compare (QUtf8StringView other, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
constexpr int compare (QChar c) const noexcept
 
int compare (QChar c, Qt::CaseSensitivity cs) const noexcept
 
int localeAwareCompare (QStringView other) const
 
bool startsWith (QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
bool startsWith (QLatin1StringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
bool startsWith (QChar c) const noexcept
 
bool startsWith (QChar c, Qt::CaseSensitivity cs) const noexcept
 Returns true if this string view starts with.
 
bool endsWith (QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
bool endsWith (QLatin1StringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
bool endsWith (QChar c) const noexcept
 
bool endsWith (QChar c, Qt::CaseSensitivity cs) const noexcept
 Returns true if this string view ends with.
 
qsizetype indexOf (QChar c, qsizetype from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
qsizetype indexOf (QStringView s, qsizetype from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
qsizetype indexOf (QLatin1StringView s, qsizetype from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
bool contains (QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
bool contains (QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
bool contains (QLatin1StringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
qsizetype count (QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
qsizetype count (QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
qsizetype count (QLatin1StringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
 
qsizetype lastIndexOf (QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
qsizetype lastIndexOf (QChar c, qsizetype from, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
qsizetype lastIndexOf (QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
qsizetype lastIndexOf (QStringView s, qsizetype from, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
qsizetype lastIndexOf (QLatin1StringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
qsizetype lastIndexOf (QLatin1StringView s, qsizetype from, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
 
bool isRightToLeft () const noexcept
 
bool isValidUtf16 () const noexcept
 
bool isUpper () const noexcept
 
bool isLower () const noexcept
 
short toShort (bool *ok=nullptr, int base=10) const
 Returns the string view converted to a short using base base, which is 10 by default and must be between 2 and 36, or 0.
 
ushort toUShort (bool *ok=nullptr, int base=10) const
 Returns the string view converted to an {unsigned short} using base base, which is 10 by default and must be between 2 and 36, or 0.
 
int toInt (bool *ok=nullptr, int base=10) const
 Returns the string view converted to an int using base base, which is 10 by default and must be between 2 and 36, or 0.
 
uint toUInt (bool *ok=nullptr, int base=10) const
 Returns the string view converted to an {unsigned int} using base base, which is 10 by default and must be between 2 and 36, or 0.
 
long toLong (bool *ok=nullptr, int base=10) const
 Returns the string view converted to a long using base base, which is 10 by default and must be between 2 and 36, or 0.
 
ulong toULong (bool *ok=nullptr, int base=10) const
 Returns the string view converted to an {unsigned long} using base base, which is 10 by default and must be between 2 and 36, or 0.
 
qlonglong toLongLong (bool *ok=nullptr, int base=10) const
 Returns the string view converted to a {long long} using base base, which is 10 by default and must be between 2 and 36, or 0.
 
qulonglong toULongLong (bool *ok=nullptr, int base=10) const
 Returns the string view converted to an {unsigned long long} using base base, which is 10 by default and must be between 2 and 36, or 0.
 
Q_CORE_EXPORT float toFloat (bool *ok=nullptr) const
 Returns the string view converted to a float value.
 
Q_CORE_EXPORT double toDouble (bool *ok=nullptr) const
 Returns the string view converted to a double value.
 
qsizetype toWCharArray (wchar_t *array) const
 
Q_CORE_EXPORT QList< QStringViewsplit (QStringView sep, Qt::SplitBehavior behavior=Qt::KeepEmptyParts, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
 Splits the view into substring views wherever sep occurs, and returns the list of those string views.
 
Q_CORE_EXPORT QList< QStringViewsplit (QChar sep, Qt::SplitBehavior behavior=Qt::KeepEmptyParts, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
 
const_iterator begin () const noexcept
 Returns a const \l{STL-style iterators}{STL-style iterator} pointing to the first character in the string view.
 
const_iterator end () const noexcept
 Returns a const \l{STL-style iterators}{STL-style iterator} pointing to the imaginary character after the last character in the list.
 
const_iterator cbegin () const noexcept
 Same as begin().
 
const_iterator cend () const noexcept
 Same as end().
 
const_reverse_iterator rbegin () const noexcept
 Returns a const \l{STL-style iterators}{STL-style} reverse iterator pointing to the first character in the string view, in reverse order.
 
const_reverse_iterator rend () const noexcept
 Returns a \l{STL-style iterators}{STL-style} reverse iterator pointing to one past the last character in the string view, in reverse order.
 
const_reverse_iterator crbegin () const noexcept
 Same as rbegin().
 
const_reverse_iterator crend () const noexcept
 Same as rend().
 
constexpr bool empty () const noexcept
 Returns whether this string view is empty - that is, whether {size() == 0}.
 
constexpr QChar front () const
 
constexpr QChar back () const
 Returns the last character in the string view.
 
Q_IMPLICIT operator std::u16string_view () const noexcept
 
const_iterator constBegin () const noexcept
 
const_iterator constEnd () const noexcept
 
constexpr bool isNull () const noexcept
 Returns whether this string view is null - that is, whether {data() == nullptr}.
 
constexpr bool isEmpty () const noexcept
 Returns whether this string view is empty - that is, whether {size() == 0}.
 
constexpr qsizetype length () const noexcept
 Same as size().
 
constexpr QChar first () const
 Returns the first character in the string view.
 
constexpr QChar last () const
 Returns the last character in the string view.
 
template<typename... Args>
Q_ALWAYS_INLINE QString arg (Args &&...args) const
 

Static Public Member Functions

template<typename Char , size_t Size, if_compatible_char< Char > = true>
static constexpr QStringView fromArray (const Char(&string)[Size]) noexcept
 Constructs a string view on the full character string literal string, including any trailing {Char(0)}.
 

Friends

bool comparesEqual (const QStringView &lhs, const QStringView &rhs) noexcept
 
Qt::strong_ordering compareThreeWay (const QStringView &lhs, const QStringView &rhs) noexcept
 
bool comparesEqual (const QStringView &lhs, QChar rhs) noexcept
 
Qt::strong_ordering compareThreeWay (const QStringView &lhs, QChar rhs) noexcept
 
bool comparesEqual (const QStringView &lhs, const QByteArrayView &rhs) noexcept
 
Qt::strong_ordering compareThreeWay (const QStringView &lhs, const QByteArrayView &rhs) noexcept
 

Related Symbols

(Note that these are not member symbols.)

int compareStrings (QStringView lhs, QStringView rhs, Qt::CaseSensitivity cs) noexcept
 
int compareStrings (QStringView lhs, QLatin1StringView rhs, Qt::CaseSensitivity cs) noexcept
 
int compareStrings (QStringView lhs, QBasicUtf8StringView< false > rhs, Qt::CaseSensitivity cs) noexcept
 
int compareStrings (QLatin1StringView lhs, QStringView rhs, Qt::CaseSensitivity cs) noexcept
 
int compareStrings (QLatin1StringView lhs, QLatin1StringView rhs, Qt::CaseSensitivity cs) noexcept
 
int compareStrings (QLatin1StringView lhs, QBasicUtf8StringView< false > rhs, Qt::CaseSensitivity cs) noexcept
 
int compareStrings (QBasicUtf8StringView< false > lhs, QStringView rhs, Qt::CaseSensitivity cs) noexcept
 
int compareStrings (QBasicUtf8StringView< false > lhs, QLatin1StringView rhs, Qt::CaseSensitivity cs) noexcept
 
int compareStrings (QBasicUtf8StringView< false > lhs, QBasicUtf8StringView< false > rhs, Qt::CaseSensitivity cs) noexcept
 
QByteArray convertToLatin1 (QStringView string)
 
QByteArray convertToLocal8Bit (QStringView string)
 
QByteArray convertToUtf8 (QStringView string)
 
QList< uintconvertToUcs4 (QStringView string)
 
QLatin1StringView trimmed (QLatin1StringView s)
 
bool isRightToLeft (QStringView string) noexcept
 
bool startsWith (QLatin1StringView haystack, QLatin1StringView needle, Qt::CaseSensitivity cs)
 
bool endsWith (QLatin1StringView haystack, QLatin1StringView needle, Qt::CaseSensitivity cs)
 
size_t qHash (QStringView key, size_t seed=0)
 

Detailed Description

\inmodule QtCore

Since
5.10

The QStringView class provides a unified view on UTF-16 strings with a read-only subset of the QString API. \reentrant

A QStringView references a contiguous portion of a UTF-16 string it does not own. It acts as an interface type to all kinds of UTF-16 string, without the need to construct a QString first.

The UTF-16 string may be represented as an array (or an array-compatible data-structure such as QString, std::basic_string, etc.) of QChar, ushort, char16_t or (on platforms, such as Windows, where it is a 16-bit type) wchar_t.

QStringView is designed as an interface type; its main use-case is as a function parameter type. When QStringViews are used as automatic variables or data members, care must be taken to ensure that the referenced string data (for example, owned by a QString) outlives the QStringView on all code paths, lest the string view ends up referencing deleted data.

When used as an interface type, QStringView allows a single function to accept a wide variety of UTF-16 string data sources. One function accepting QStringView thus replaces three function overloads (taking QString and {(const QChar*, qsizetype)}), while at the same time enabling even more string data sources to be passed to the function, such as {u"Hello World"}, a char16_t string literal.

QStringViews should be passed by value, not by reference-to-const:

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

If you want to give your users maximum freedom in what strings they can pass to your function, accompany the QStringView overload with overloads for

\list

QStringView can also be used as the return value of a function. If you call a function returning QStringView, take extra care to not keep the QStringView around longer than the function promises to keep the referenced string data alive. If in doubt, obtain a strong reference to the data by calling toString() to convert the QStringView into a QString.

QStringView is a {Literal Type}, but since it stores data as {char16_t}, iteration is not constexpr (casts from {const char16_t*} to {const QChar*}, which is not allowed in constexpr functions). You can use an indexed loop and/or utf16() in constexpr contexts instead.

See also
QString

Definition at line 77 of file qstringview.h.

Member Typedef Documentation

◆ const_iterator

This typedef provides an STL-style const iterator for QStringView.

See also
iterator, const_reverse_iterator

Definition at line 90 of file qstringview.h.

◆ const_pointer

Alias for {value_type *}.

Provided for compatibility with the STL.

Definition at line 87 of file qstringview.h.

◆ const_reference

Alias for {value_type &}.

Provided for compatibility with the STL.

Definition at line 85 of file qstringview.h.

◆ const_reverse_iterator

This typedef provides an STL-style const reverse iterator for QStringView.

See also
reverse_iterator, const_iterator

Definition at line 92 of file qstringview.h.

◆ difference_type

Alias for {std::ptrdiff_t}.

Provided for compatibility with the STL.

Definition at line 82 of file qstringview.h.

◆ iterator

This typedef provides an STL-style const iterator for QStringView.

QStringView does not support mutable iterators, so this is the same as const_iterator.

See also
const_iterator, reverse_iterator

Definition at line 89 of file qstringview.h.

◆ pointer

Alias for {value_type *}.

Provided for compatibility with the STL.

QStringView does not support mutable pointers, so this is the same as const_pointer.

Definition at line 86 of file qstringview.h.

◆ reference

Alias for {value_type &}.

Provided for compatibility with the STL.

QStringView does not support mutable references, so this is the same as const_reference.

Definition at line 84 of file qstringview.h.

◆ reverse_iterator

This typedef provides an STL-style const reverse iterator for QStringView.

QStringView does not support mutable reverse iterators, so this is the same as const_reverse_iterator.

See also
const_reverse_iterator, iterator

Definition at line 91 of file qstringview.h.

◆ size_type

Alias for qsizetype.

Provided for compatibility with the STL.

Definition at line 83 of file qstringview.h.

◆ storage_type

Alias for {char16_t}.

Definition at line 80 of file qstringview.h.

◆ value_type

Alias for {const QChar}.

Provided for compatibility with the STL.

Definition at line 81 of file qstringview.h.

Constructor & Destructor Documentation

◆ QStringView() [1/7]

QStringView::QStringView ( )
inlineconstexprnoexcept

Constructs a null string view.

See also
isNull()

Definition at line 126 of file qstringview.h.

Referenced by compare(), contains(), endsWith(), fromArray(), left(), mid(), right(), sliced(), sliced(), and startsWith().

+ Here is the caller graph for this function:

◆ QStringView() [2/7]

QStringView::QStringView ( std::nullptr_t )
inlineconstexprnoexcept

Constructs a null string view.

See also
isNull()

Definition at line 127 of file qstringview.h.

◆ QStringView() [3/7]

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

Constructs a string view on str with length len.

The range {[str,len)} must remain valid for the lifetime of this string view object.

Passing \nullptr as str is safe if len is 0, too, and results in a null string view.

The behavior is undefined if len is negative or, when positive, if str is \nullptr.

This constructor only participates in overload resolution if Char is a compatible character type. The compatible character types are: QChar, ushort, char16_t and (on platforms, such as Windows, where it is a 16-bit type) wchar_t.

Definition at line 131 of file qstringview.h.

◆ QStringView() [4/7]

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

Constructs a string view on first with length (last - first).

The range {[first,last)} must remain valid for the lifetime of this string view object.

Passing \nullptr as first is safe if last is \nullptr, too, and results in a null string view.

The behavior is undefined if last precedes first, or first is \nullptr and last is not.

This constructor only participates in overload resolution if Char is a compatible character type. The compatible character types are: QChar, ushort, char16_t and (on platforms, such as Windows, where it is a 16-bit type) wchar_t.

Definition at line 142 of file qstringview.h.

◆ QStringView() [5/7]

template<typename Pointer , if_compatible_pointer< Pointer > = true>
constexpr QStringView::QStringView ( const Pointer & str)
inlineconstexprnoexcept

Definition at line 154 of file qstringview.h.

◆ QStringView() [6/7]

template<typename String , if_compatible_qstring_like< String > = true>
QStringView::QStringView ( const String & str)
inlinenoexcept

Definition at line 162 of file qstringview.h.

◆ QStringView() [7/7]

template<typename Container , if_compatible_container< Container > = true>
constexpr Q_ALWAYS_INLINE QStringView::QStringView ( const Container & c)
inlineconstexprnoexcept

Definition at line 167 of file qstringview.h.

Member Function Documentation

◆ arg() [1/2]

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

Definition at line 1588 of file qstring.h.

References args, QtPrivate::argToQStringDispatch(), and QtPrivate::qStringLikeToArg().

+ Here is the call graph for this function:

◆ arg() [2/2]

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

Referenced by QString::arg(), and QLocale::createSeparatedList().

+ Here is the caller graph for this function:

◆ at()

QChar QStringView::at ( qsizetype n) const
inlineconstexprnoexcept

Returns the character at position n in this string view.

The behavior is undefined if n is negative or not less than size().

See also
operator[](), front(), back()

Definition at line 201 of file qstringview.h.

Referenced by QQmlJS::Dom::CommentInfo::CommentInfo(), QPainterPath::contains(), fontSizeSpec(), QQmlJS::Dom::FormatPartialStatus::handleTokens(), QQmlPropertyPrivate::initProperty(), processUrlForClassName(), and QQmlJS::Dom::FormatPartialStatus::recalculateWithIndent().

+ Here is the caller graph for this function:

◆ back()

QChar QStringView::back ( ) const
inlineconstexpr

Returns the last character in the string view.

\fn QChar QStringView::front() const

Returns the first character in the string view. Same as first().

This function is provided for STL compatibility.

! [calling-on-empty-is-UB]

Warning
Calling this function on an empty string view constitutes undefined behavior. ! [calling-on-empty-is-UB]
\sa back(), first(), last()

Same as last().

This function is provided for STL compatibility.

calling-on-empty-is-UB

See also
front(), first(), last()

Definition at line 401 of file qstringview.h.

References empty(), and Q_ASSERT.

Referenced by endsWith(), and last().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ begin()

QStringView::const_iterator QStringView::begin ( ) const
inlinenoexcept

Returns a const \l{STL-style iterators}{STL-style iterator} pointing to the first character in the string view.

This function is provided for STL compatibility.

See also
end(), constBegin(), cbegin(), rbegin(), data()

Definition at line 390 of file qstringview.h.

Referenced by cbegin(), constBegin(), QQmlJS::Dom::inQString(), parseIp6(), and rend().

+ Here is the caller graph for this function:

◆ cbegin()

QStringView::const_iterator QStringView::cbegin ( ) const
inlinenoexcept

Same as begin().

This function is provided for STL compatibility.

See also
cend(), begin(), constBegin(), crbegin(), data()

Definition at line 392 of file qstringview.h.

References begin().

+ Here is the call graph for this function:

◆ cend()

QStringView::const_iterator QStringView::cend ( ) const
inlinenoexcept

Same as end().

This function is provided for STL compatibility.

See also
cbegin(), end(), constEnd(), crend()

Definition at line 393 of file qstringview.h.

◆ chop()

void QStringView::chop ( qsizetype length)
inlineconstexprnoexcept

Truncates this string view by length characters.

Same as {*this = left(size() - length)}.

Note
The behavior is undefined when length < 0 or length > size().
See also
mid(), left(), right(), chopped(), truncate()

Definition at line 235 of file qstringview.h.

Referenced by parseIp6(), and QDir::relativeFilePath().

+ Here is the caller graph for this function:

◆ chopped()

QStringView QStringView::chopped ( qsizetype length) const
inlineconstexprnoexcept

Returns the substring of length size() - length starting at the beginning of this object.

\fn QStringView QStringView::sliced(qsizetype pos, qsizetype n) const
\since 6.0

Returns a string view that points to \a n characters of this string view,
starting at position \a pos.

! [UB-sliced-index-length]

Note
The behavior is undefined when pos < 0, n < 0, or pos + n > size(). ! [UB-sliced-index-length]
\sa first(), last(), chopped(), chop(), truncate()
\fn QStringView QStringView::sliced(qsizetype pos) const
\since 6.0
\overload

Returns a string view starting at position \a pos in this object,
and extending to its end.

! [UB-sliced-index-only]

Note
The behavior is undefined when pos < 0 or pos > size(). ! [UB-sliced-index-only]
\sa first(), last(), chopped(), chop(), truncate()

Same as {left(size() - length)}.

Note
The behavior is undefined when length < 0 or length > size().
See also
mid(), left(), right(), chop(), truncate()

Definition at line 230 of file qstringview.h.

References sliced().

Referenced by QQmlTypeLoaderQmldirContent::hasRedirection().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compare() [1/5]

int QStringView::compare ( QChar c) const
inlineconstexprnoexcept

Definition at line 250 of file qstringview.h.

References utf16().

+ Here is the call graph for this function:

◆ compare() [2/5]

int QStringView::compare ( QChar ch,
Qt::CaseSensitivity cs ) const
inlinenoexcept
Since
5.15

Compares this string view to the Latin-1 string view l1, or the character ch. Returns a negative integer if this string view is less than l1 or ch, a positive integer if it is greater than l1 or ch, and zero if they are equal.

{search-comparison-case-sensitivity} {comparison}

See also
operator==(), operator<(), operator>()

Definition at line 252 of file qstringview.h.

References QStringView(), and QtPrivate::compareStrings().

+ Here is the call graph for this function:

◆ compare() [3/5]

int QStringView::compare ( QLatin1StringView other,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 72 of file qstring.h.

References QtPrivate::compareStrings().

+ Here is the call graph for this function:

◆ compare() [4/5]

int QStringView::compare ( QStringView str,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept
Since
5.12

Compares this string view with string view str and returns a negative integer if this string view is less than str, a positive integer if it is greater than str, and zero if they are equal.

{search-comparison-case-sensitivity} {comparison}

See also
operator==(), operator<(), operator>()

Definition at line 246 of file qstringview.h.

References QtPrivate::compareStrings(), and other().

Referenced by QDir::relativeFilePath().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compare() [5/5]

int QStringView::compare ( QUtf8StringView str,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept
Since
6.5

Compares this string view with QUtf8StringView str and returns a negative integer if this string view is less than str, a positive integer if it is greater than str, and zero if they are equal.

{search-comparison-case-sensitivity} {comparison}

See also
operator==(), operator<(), operator>()

Definition at line 1114 of file qstring.h.

References QtPrivate::compareStrings(), and other().

+ Here is the call graph for this function:

◆ constBegin()

QStringView::const_iterator QStringView::constBegin ( ) const
inlinenoexcept
Since
6.1

Same as begin().

See also
constEnd(), begin(), cbegin(), crbegin(), data()

Definition at line 409 of file qstringview.h.

References begin().

Referenced by parseIp6().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ constData()

const QChar * QStringView::constData ( ) const
inlinenoexcept
\fn const QChar *QStringView::data() const

! [const-pointer-to-first-ch] Returns a const pointer to the first character in the string view.

Note
The character array represented by the return value is not null-terminated. ! [const-pointer-to-first-ch]
\sa begin(), end(), utf16()
Since
6.0

const-pointer-to-first-ch

See also
data(), begin(), end(), utf16()

Definition at line 183 of file qstringview.h.

Referenced by QQmlJS::Dom::inQString(), and QHashedStringRef::operator==().

+ Here is the caller graph for this function:

◆ constEnd()

QStringView::const_iterator QStringView::constEnd ( ) const
inlinenoexcept
Since
6.1

Same as end().

See also
constBegin(), end(), cend(), crend()

Definition at line 410 of file qstringview.h.

Referenced by parseIp6().

+ Here is the caller graph for this function:

◆ contains() [1/3]

bool QStringView::contains ( QChar c,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept
Since
5.14

Returns true if this string view contains an occurrence of

utf16-or-latin1-or-ch respectively; otherwise returns false.

{search-comparison-case-sensitivity} {search}

See also
indexOf()

Definition at line 279 of file qstringview.h.

References QStringView(), and indexOf().

Referenced by QNetworkCookieJar::cookiesForUrl(), language::formatConnection(), hasSvgHeader(), and qIsEffectiveTLD().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ contains() [2/3]

bool QStringView::contains ( QLatin1StringView s,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 80 of file qstring.h.

References indexOf().

+ Here is the call graph for this function:

◆ contains() [3/3]

bool QStringView::contains ( QStringView s,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 281 of file qstringview.h.

References indexOf().

+ Here is the call graph for this function:

◆ count() [1/3]

qsizetype QStringView::count ( QChar c,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 285 of file qstringview.h.

References QtPrivate::count().

+ Here is the call graph for this function:

◆ count() [2/3]

qsizetype QStringView::count ( QLatin1StringView s,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inline

Definition at line 86 of file qstring.h.

References QtPrivate::count().

+ Here is the call graph for this function:

◆ count() [3/3]

qsizetype QStringView::count ( QStringView s,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 287 of file qstringview.h.

References QtPrivate::count().

+ Here is the call graph for this function:

◆ crbegin()

QStringView::const_reverse_iterator QStringView::crbegin ( ) const
inlinenoexcept

Same as rbegin().

This function is provided for STL compatibility.

See also
crend(), rbegin(), cbegin()

Definition at line 396 of file qstringview.h.

References rbegin().

+ Here is the call graph for this function:

◆ crend()

QStringView::const_reverse_iterator QStringView::crend ( ) const
inlinenoexcept

Same as rend().

This function is provided for STL compatibility.

See also
crbegin(), rend(), cend()

Definition at line 397 of file qstringview.h.

References rend().

+ Here is the call graph for this function:

◆ data()

const_pointer QStringView::data ( ) const
inlinenoexcept

Definition at line 182 of file qstringview.h.

Referenced by QDBusUtil::isValidPartOfObjectPath(), QtPrivate::QStringList_replaceInStrings(), QTextBoundaryFinder::string(), and QmlIR::IRBuilder::visit().

+ Here is the caller graph for this function:

◆ empty()

bool QStringView::empty ( ) const
inlineconstexprnoexcept

Returns whether this string view is empty - that is, whether {size() == 0}.

This function is provided for STL compatibility.

See also
isEmpty(), isNull(), size(), length()

Definition at line 399 of file qstringview.h.

Referenced by back(), endsWith(), front(), isEmpty(), and startsWith().

+ Here is the caller graph for this function:

◆ end()

QStringView::const_iterator QStringView::end ( ) const
inlinenoexcept

Returns a const \l{STL-style iterators}{STL-style iterator} pointing to the imaginary character after the last character in the list.

This function is provided for STL compatibility.

See also
begin(), constEnd(), cend(), rend()

Definition at line 391 of file qstringview.h.

Referenced by parseIp6().

+ Here is the caller graph for this function:

◆ endsWith() [1/4]

bool QStringView::endsWith ( QChar c) const
inlinenoexcept

Definition at line 268 of file qstringview.h.

References back(), and empty().

+ Here is the call graph for this function:

◆ endsWith() [2/4]

bool QStringView::endsWith ( QChar ch,
Qt::CaseSensitivity cs ) const
inlinenoexcept

Returns true if this string view ends with.

utf16-or-latin1-or-ch respectively; otherwise returns false.

{search-comparison-case-sensitivity} {search}

See also
startsWith()

Definition at line 270 of file qstringview.h.

References QStringView(), and QtPrivate::endsWith().

+ Here is the call graph for this function:

◆ endsWith() [3/4]

bool QStringView::endsWith ( QLatin1StringView s,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 76 of file qstring.h.

References QtPrivate::endsWith().

+ Here is the call graph for this function:

◆ endsWith() [4/4]

bool QStringView::endsWith ( QStringView s,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 265 of file qstringview.h.

References QtPrivate::endsWith().

Referenced by QQmlJS::Dom::PathEls::Filter::checkName(), QSQLiteDriverPrivate::isIdentifierEscaped(), isParentDomain(), and readInputFile().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ first() [1/2]

QChar QStringView::first ( ) const
inlineconstexpr

Returns the first character in the string view.

Same as front().

This function is provided for compatibility with other Qt containers.

calling-on-empty-is-UB

See also
front(), back(), last()

Definition at line 415 of file qstringview.h.

References front().

+ Here is the call graph for this function:

◆ first() [2/2]

QStringView QStringView::first ( qsizetype n) const
inlineconstexprnoexcept
Since
6.0

Returns a string view that points to the first n characters of this string view.

Note
The behavior is undefined when n < 0 or n > size().
See also
last(), sliced(), startsWith(), chopped(), chop(), truncate()

Definition at line 222 of file qstringview.h.

References sliced().

Referenced by QSQLiteDriverPrivate::getTableInfo(), logLowerCaseImport(), and QString::toHtmlEscaped().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ fromArray()

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

Constructs a string view on the full character string literal string, including any trailing {Char(0)}.

If you don't want the null-terminator included in the view then you can chop() it off when you are certain it is at the end. Alternatively you can use the constructor overload taking an array literal which will create a view up to, but not including, the first null-terminator in the data.

string must remain valid for the lifetime of this string view object.

This function will work with any array literal if Char is a compatible character type. The compatible character types are: QChar, ushort, char16_t and (on platforms, such as Windows, where it is a 16-bit type) wchar_t.

Definition at line 171 of file qstringview.h.

References QStringView().

+ Here is the call graph for this function:

◆ front()

constexpr QChar QStringView::front ( ) const
inlineconstexpr

Definition at line 400 of file qstringview.h.

References empty(), and Q_ASSERT.

Referenced by first(), and startsWith().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ indexOf() [1/3]

qsizetype QStringView::indexOf ( QChar c,
qsizetype from = 0,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept
Since
5.14

Returns the index position of the first occurrence of

utf16-or-latin1-or-ch respectively, in this string view, searching forward from index position from. Returns -1 if str, l1 or ch is not found, respectively.

{search-comparison-case-sensitivity} {search}

negative-index-start-search-from-end

See also
QString::indexOf()

Definition at line 273 of file qstringview.h.

References QtPrivate::findString().

Referenced by contains(), contains(), QTextMarkdownImporter::import(), QMYSQLDriver::open(), and parseIp6().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ indexOf() [2/3]

qsizetype QStringView::indexOf ( QLatin1StringView s,
qsizetype from = 0,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 78 of file qstring.h.

References QtPrivate::findString().

+ Here is the call graph for this function:

◆ indexOf() [3/3]

qsizetype QStringView::indexOf ( QStringView s,
qsizetype from = 0,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 275 of file qstringview.h.

References QtPrivate::findString().

+ Here is the call graph for this function:

◆ isEmpty()

bool QStringView::isEmpty ( ) const
inlineconstexprnoexcept

Returns whether this string view is empty - that is, whether {size() == 0}.

This function is provided for compatibility with other Qt containers.

See also
empty(), isNull(), size(), length()

Definition at line 412 of file qstringview.h.

References empty().

Referenced by QQmlJS::Dom::OutWriter::OutWriter(), QSvgAttributes::QSvgAttributes(), QTextBoundaryFinder::QTextBoundaryFinder(), QV4::Compiler::ControlFlowCatch::~ControlFlowCatch(), QQmlJS::Dom::LineWriter::addNewlinesAutospacerCallback(), constructColor(), createRadialGradientNode(), QQmlJS::Dom::QQmlDomAstCreator::endVisit(), QQmlJS::Dom::QQmlDomAstCreator::endVisit(), QQmlJS::Dom::ErrorGroups::fatal(), language::formatConnection(), QLocaleData::NumericData::isValid(), QDBusUtil::isValidPartOfObjectPath(), QDBusUtil::isValidUniqueConnectionName(), QV4::Text::method_isElementContentWhitespace(), parseBaseGradient(), parseBrush(), parseCompOp(), parseExtendedAttributes(), parseFont(), parseIp6(), parseOpacity(), parseOthers(), parsePen(), parseRenderingHints(), parseServerList(), parseTransform(), parseVisibility(), processUrlForClassName(), qRelocateResourceFile(), QString::section(), QQmlJS::Dom::QQmlDomAstCreator::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::ScanFunctions::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::ScanFunctions::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::ScanFunctions::visit(), and QmlIR::IRBuilder::visit().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isLower()

bool QStringView::isLower ( ) const
inlinenoexcept
Since
6.7 Returns true if this view is identical to its lowercase folding.

Note that this does not mean that the string view does not contain uppercase letters (some uppercase letters do not have a lowercase folding; they are left unchanged by toString().toLower()). For more information, refer to the Unicode standard, section 3.13.

See also
QChar::toLower(), isUpper()

Definition at line 338 of file qstringview.h.

References QtPrivate::isLower().

+ Here is the call graph for this function:

◆ isNull()

bool QStringView::isNull ( ) const
inlineconstexprnoexcept

Returns whether this string view is null - that is, whether {data() == nullptr}.

This functions is provided for compatibility with other Qt containers.

See also
empty(), isEmpty(), size(), length()

Definition at line 411 of file qstringview.h.

Referenced by QQmlJS::AST::PatternElement::convertLiteralToAssignmentPattern(), QQmlJS::AST::ImportDeclaration::lastSourceLocation(), QQmlJS::Dom::ScriptFormatter::visit(), QQmlJS::Dom::ScriptFormatter::visit(), QQmlJS::Dom::ScriptFormatter::visit(), QQmlJS::Dom::ScriptFormatter::visit(), QQmlJS::Dom::ScriptFormatter::visit(), QQmlJS::Dom::ScriptFormatter::visit(), QmlIR::IRBuilder::visit(), and QmlIR::IRBuilder::visit().

+ Here is the caller graph for this function:

◆ isRightToLeft()

bool QStringView::isRightToLeft ( ) const
inlinenoexcept
Since
5.11

Returns true if the string view is read right to left.

See also
QString::isRightToLeft()

Definition at line 331 of file qstringview.h.

References QtPrivate::isRightToLeft().

+ Here is the call graph for this function:

◆ isUpper()

bool QStringView::isUpper ( ) const
inlinenoexcept
Since
6.7 Returns true if this view is identical to its uppercase folding.

Note that this does not mean that the the string view does not contain lowercase letters (some lowercase letters do not have a uppercase folding; they are left unchanged by toString().toUpper()). For more information, refer to the Unicode standard, section 3.13.

See also
QChar::toUpper(), isLower()

Definition at line 336 of file qstringview.h.

References QtPrivate::isUpper().

+ Here is the call graph for this function:

◆ isValidUtf16()

bool QStringView::isValidUtf16 ( ) const
inlinenoexcept
Since
5.15

Returns true if the string view contains valid UTF-16 encoded data, or false otherwise.

Note that this function does not perform any special validation of the data; it merely checks if it can be successfully decoded from UTF-16. The data is assumed to be in host byte order; the presence of a BOM is meaningless.

See also
QString::isValidUtf16()

Definition at line 333 of file qstringview.h.

References QtPrivate::isValidUtf16().

Referenced by QString::isValidUtf16().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ last() [1/2]

QChar QStringView::last ( ) const
inlineconstexpr

Returns the last character in the string view.

Same as back().

This function is provided for compatibility with other Qt containers.

calling-on-empty-is-UB

See also
back(), front(), first()

Definition at line 416 of file qstringview.h.

References back().

+ Here is the call graph for this function:

◆ last() [2/2]

QStringView QStringView::last ( qsizetype n) const
inlineconstexprnoexcept
Since
6.0

Returns a string view that points to the last n characters of this string view.

Note
The behavior is undefined when n < 0 or n > size().
See also
first(), sliced(), endsWith(), chopped(), chop(), truncate()

Definition at line 224 of file qstringview.h.

References sliced().

+ Here is the call graph for this function:

◆ lastIndexOf() [1/6]

qsizetype QStringView::lastIndexOf ( QChar c,
qsizetype from,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept
Since
5.14

Returns the index position of the last occurrence of

utf16-or-latin1-or-ch respectively, in this string view, searching backward from index position from.

negative-index-start-search-from-end

Returns -1 if str, l1 or c is not found, respectively.

{search-comparison-case-sensitivity} {search}

Note
When searching for a 0-length str or l1, the match at the end of the data is excluded from the search by a negative from, even though {-1} is normally thought of as searching from the end of the string view: the match at the end is after the last character, so it is excluded. To include such a final empty match, either give a positive value for from or omit the from parameter entirely.
See also
QString::lastIndexOf()

Definition at line 293 of file qstringview.h.

References QtPrivate::lastIndexOf().

+ Here is the call graph for this function:

◆ lastIndexOf() [2/6]

qsizetype QStringView::lastIndexOf ( QChar c,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 291 of file qstringview.h.

References lastIndexOf().

Referenced by lastIndexOf(), lastIndexOf(), parseIp6(), and parseIp6().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lastIndexOf() [3/6]

qsizetype QStringView::lastIndexOf ( QLatin1StringView s,
qsizetype from,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 84 of file qstring.h.

References QtPrivate::lastIndexOf().

+ Here is the call graph for this function:

◆ lastIndexOf() [4/6]

qsizetype QStringView::lastIndexOf ( QLatin1StringView s,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 82 of file qstring.h.

References QtPrivate::lastIndexOf().

+ Here is the call graph for this function:

◆ lastIndexOf() [5/6]

qsizetype QStringView::lastIndexOf ( QStringView s,
qsizetype from,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 297 of file qstringview.h.

References QtPrivate::lastIndexOf().

+ Here is the call graph for this function:

◆ lastIndexOf() [6/6]

qsizetype QStringView::lastIndexOf ( QStringView s,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 295 of file qstringview.h.

References lastIndexOf().

+ Here is the call graph for this function:

◆ left()

QStringView QStringView::left ( qsizetype length) const
inlineconstexprnoexcept
Deprecated
Use first() instead in new code.

Returns the substring of length length starting at position 0 in this object.

The entire string view is returned if length is greater than or equal to size(), or less than zero.

See also
first(), last(), sliced(), startsWith(), chopped(), chop(), truncate()

Definition at line 209 of file qstringview.h.

References QStringView().

Referenced by QDir::absoluteFilePath(), QUrlPrivate::appendPath(), QQuickScriptActionPrivate::debugAction(), QDir::filePath(), language::formatMemberFnPtr(), QSslCertificate::fromPath(), QUrl::fromUserInput(), QFontMetrics::horizontalAdvance(), QFontMetricsF::horizontalAdvance(), QSslSocketPrivate::isMatchingHostname(), QUrlPrivate::mergePaths(), QV4::StringPrototype::method_endsWith(), QMYSQLDriver::open(), parseServerList(), qSetFontSizeFromToken(), QQmlImportNamespace::resolveType(), QTextBrowserPrivate::setSource(), QtWaylandClient::QWaylandWindow::setWindowTitle(), and QQmlJS::Dom::ScriptFormatter::visit().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ length()

QStringView::length ( ) const
inlineconstexprnoexcept

Same as size().

This function is provided for compatibility with other Qt containers.

See also
empty(), isEmpty(), isNull(), size()

Definition at line 413 of file qstringview.h.

◆ localeAwareCompare()

int QStringView::localeAwareCompare ( QStringView other) const
inline
Since
6.4

Compares this string view with the other string view and returns an integer less than, equal to, or greater than zero if this string view is less than, equal to, or greater than the other string view.

The comparison is performed in a locale- and also platform-dependent manner. Use this function to present sorted lists of strings to the user.

See also
{Comparing Strings}

Definition at line 1499 of file qstring.h.

References QString::localeAwareCompare(), and other().

+ Here is the call graph for this function:

◆ mid()

QStringView QStringView::mid ( qsizetype start,
qsizetype length = -1 ) const
inlineconstexprnoexcept

Returns the substring of length length starting at position start in this object.

Deprecated
Use sliced() instead in new code.

Returns an empty string view if start exceeds the length of the string view. If there are less than length characters available in the string view starting at start, or if length is negative (default), the function returns all characters that are available from start.

See also
first(), last(), sliced(), chopped(), chop(), truncate()

Definition at line 203 of file qstringview.h.

References QStringView(), and pos.

Referenced by QQmlJS::Dom::CommentInfo::CommentInfo(), QEvdevTouchScreenData::QEvdevTouchScreenData(), QMacSettingsPrivate::QMacSettingsPrivate(), QMimeMagicRule::QMimeMagicRule(), QSvgAttributes::QSvgAttributes(), _q_createLegacyEngine_recursive(), QFileDialogPrivate::addDefaultSuffixToUrls(), adjustFtpPath(), appendReplacementString(), CompletionContextStrings::base(), QRegularExpressionMatch::capturedView(), QQmlJS::Dom::CommentInfo::comment(), QQmlJS::Dom::CommentInfo::commentContent(), QQmlJS::Dom::LineWriter::commitLine(), QQmlTranslation::contextFromQmlFilename(), QV4::FunctionObject::createBuiltinFunction(), decode(), QKeySequencePrivate::decodeString(), QV4::Object::defineAccessorProperty(), QQmlJS::Dom::LineWriter::ensureSpace(), extractExtensions(), extractExtensionsAndGlobs(), QAndroidMetaData::extractMetadata(), CompletionContextStrings::filterChars(), findChildObject(), findGraphicsFactory(), findGroupFactory(), findObject(), findStyleFactoryMethod(), findStyleUtilFactoryMethod(), findUtilFactory(), language::formatConnection(), language::formatMemberFnPtr(), QUrl::fromLocalFile(), generateFileName(), getContextCapabilities(), QFileDialogPrivate::getEnvironmentVariable(), getFontWeight(), QSslSocketPrivate::isMatchingHostname(), isParentDomain(), QDBusUtil::isValidObjectPath(), QDBusUtil::isValidUniqueConnectionName(), QSSGBufferManager::loadMeshData(), QMimeGlobPattern::matchFileName(), QV4::StringPrototype::method_includes(), QV4::RegExpPrototype::method_replace(), QV4::StringPrototype::method_replace(), QV4::StringPrototype::method_startsWith(), mimeToType(), QMYSQLDriver::open(), QQmlDebugServerImpl::parseArguments(), QQuickStyledTextPrivate::parseAttribute(), parseBrush(), QQuickStyledTextPrivate::parseCloseTag(), QTextHtmlParser::parseEntity(), QQuickStyledTextPrivate::parseEntity(), parseIp6(), parseIp6(), parsePen(), parseServerList(), QHostAddress::parseSubnet(), QQuickStyledTextPrivate::parseTag(), QQuickStyledTextPrivate::parseValue(), QLibraryInfoPrivate::path(), QQmlJS::Dom::CommentInfo::postWhitespace(), CompletionContextStrings::preLine(), QQmlJS::Dom::CommentInfo::preWhitespace(), processUrlForClassName(), qParseOpts(), qt_font_from_string(), quick_test_main_with_setup(), QSvgPaintEngine::savePatternBrush(), QtPrivate::QCalendarDateValidator::setFormat(), stringMidRetainingBidiCC(), QQmlJS::Dom::QmlComponent::subComponentsNames(), QXmlStreamReaderPrivate::symView(), QmlIR::IRBuilder::textRefAt(), QmlIR::IRBuilder::textRefAt(), QQmlJS::Dom::FormatPartialStatus::tokenText(), QV4::ExecutableCompilationUnit::translateFrom(), QQmlDelegateModelPrivate::variantValue(), and QQmlJS::Dom::LineWriter::write().

+ Here is the call graph for this function:

◆ operator std::u16string_view()

QStringView::operator std::u16string_view ( ) const
inlinenoexcept
Since
6.7

Converts this QStringView object to a {std::u16string_view} object. The returned view will have the same data pointer and length of this view.

Definition at line 403 of file qstringview.h.

◆ operator[]()

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

Returns the character at position n in this string view.

The behavior is undefined if n is negative or not less than size().

See also
at(), front(), back()

Definition at line 186 of file qstringview.h.

◆ rbegin()

QStringView::const_reverse_iterator QStringView::rbegin ( ) const
inlinenoexcept

Returns a const \l{STL-style iterators}{STL-style} reverse iterator pointing to the first character in the string view, in reverse order.

This function is provided for STL compatibility.

See also
rend(), crbegin(), begin()

Definition at line 394 of file qstringview.h.

Referenced by crbegin().

+ Here is the caller graph for this function:

◆ rend()

QStringView::const_reverse_iterator QStringView::rend ( ) const
inlinenoexcept

Returns a \l{STL-style iterators}{STL-style} reverse iterator pointing to one past the last character in the string view, in reverse order.

This function is provided for STL compatibility.

See also
rbegin(), crend(), end()

Definition at line 395 of file qstringview.h.

References begin().

Referenced by crend().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ right()

QStringView QStringView::right ( qsizetype length) const
inlineconstexprnoexcept
Deprecated
Use last() instead in new code.

Returns the substring of length length starting at position size() - length in this object.

The entire string view is returned if length is greater than or equal to size(), or less than zero.

See also
first(), last(), sliced(), endsWith(), chopped(), chop(), truncate()

Definition at line 215 of file qstringview.h.

References QStringView().

Referenced by qSetFontSizeFromToken(), QAndroidInputContext::setComposingRegion(), and QQmlJS::Dom::ScriptFormatter::visit().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ size()

◆ sliced() [1/2]

constexpr QStringView QStringView::sliced ( qsizetype pos) const
inlineconstexprnoexcept

Definition at line 226 of file qstringview.h.

References QStringView(), and pos.

Referenced by appendSeparator(), QQmlSignalNames::badHandlerNameToSignalName(), bm_find(), QConfFileSettingsPrivate::children(), chopped(), QNetworkCookieJar::cookiesForUrl(), first(), QSQLiteDriverPrivate::getTableInfo(), handlerNameToSignalNameHelper(), QSettingsPrivate::iniUnescapedKey(), last(), QSettingsPrivate::stringToVariant(), QString::toHtmlEscaped(), QDoubleSpinBoxPrivate::validateAndInterpret(), and QNetworkCookieJar::validateCookie().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sliced() [2/2]

constexpr QStringView QStringView::sliced ( qsizetype pos,
qsizetype n ) const
inlineconstexprnoexcept

Definition at line 228 of file qstringview.h.

References QStringView(), and pos.

+ Here is the call graph for this function:

◆ split() [1/2]

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

Definition at line 8254 of file qstring.cpp.

References sep, and split().

+ Here is the call graph for this function:

◆ split() [2/2]

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

Splits the view into substring views wherever sep occurs, and returns the list of those string views.

See QString::split() for how sep, behavior and cs interact to form the result.

Note
All the returned views are valid as long as the data referenced by this string view is valid. Destroying the data will cause all views to become dangling.
Since
6.0

Definition at line 8249 of file qstring.cpp.

References sep.

Referenced by QPpdPrintDevice::QPpdPrintDevice(), QCupsPrintEnginePrivate::closePrintDevice(), QEvdevMouseHandler::create(), QEvdevKeyboardHandler::create(), determineScreenSize(), QQuickStateGroupPrivate::findTransition(), fontKeys(), language::formatOverload(), QFont::fromString(), QQmlPropertyPrivate::initProperty(), QDBusUtil::isValidBusName(), QDBusUtil::isValidInterfaceName(), QDBusConnection::objectRegisteredAt(), QSQLiteDriver::open(), QEvdevUtil::parseSpecification(), qDBusInterfaceFromMetaObject(), qQmlResolveImportPaths(), QDB2DriverPrivate::qSplitTableQualifier(), qt_font_from_string(), QWavefrontMesh::readData(), readInputFile(), QCss::Declaration::rectValue(), QDBusConnection::registerObject(), QString::section(), QODBCDriverPrivate::splitTableQualifier(), and QMimerSQLDriverPrivate::splitTableQualifier().

+ Here is the caller graph for this function:

◆ startsWith() [1/4]

bool QStringView::startsWith ( QChar c) const
inlinenoexcept

Definition at line 260 of file qstringview.h.

References empty(), and front().

+ Here is the call graph for this function:

◆ startsWith() [2/4]

bool QStringView::startsWith ( QChar ch,
Qt::CaseSensitivity cs ) const
inlinenoexcept

Returns true if this string view starts with.

utf16-or-latin1-or-ch respectively; otherwise returns false.

{search-comparison-case-sensitivity} {search}

See also
endsWith()

Definition at line 262 of file qstringview.h.

References QStringView(), and QtPrivate::startsWith().

+ Here is the call graph for this function:

◆ startsWith() [3/4]

bool QStringView::startsWith ( QLatin1StringView s,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 74 of file qstring.h.

References QtPrivate::startsWith().

+ Here is the call graph for this function:

◆ startsWith() [4/4]

bool QStringView::startsWith ( QStringView s,
Qt::CaseSensitivity cs = Qt::CaseSensitive ) const
inlinenoexcept

Definition at line 257 of file qstringview.h.

References QtPrivate::startsWith().

Referenced by QQmlSignalNames::badHandlerNameToSignalName(), QNetworkCookieJar::cookiesForUrl(), QSQLiteDriverPrivate::isIdentifierEscaped(), QDBusUtil::isValidUniqueConnectionName(), QtPrivate::QCalendarDateValidator::setFormat(), QDoubleSpinBoxPrivate::validateAndInterpret(), and QNetworkCookieJar::validateCookie().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ toDouble()

double QStringView::toDouble ( bool * ok = nullptr) const

Returns the string view converted to a double value.

Returns an infinity if the conversion overflows or 0.0 if the conversion fails for other reasons (e.g. underflow).

If ok is not \nullptr, failure is reported by setting *{ok} to false, and success by setting *{ok} to true.

The string conversion will always happen in the 'C' locale. For locale dependent conversion use QLocale::toDouble()

For historic reasons, this function does not handle thousands group separators. If you need to convert such numbers, use QLocale::toDouble().

See also
QString::toDouble()
Since
6.0

Definition at line 7909 of file qstring.cpp.

References ok, qt_asciiToDouble(), and qt_to_latin1().

Referenced by parseOpacity(), QString::toDouble(), and versionFromUiAttribute().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ toFloat()

float QStringView::toFloat ( bool * ok = nullptr) const

Returns the string view converted to a float value.

Returns an infinity if the conversion overflows or 0.0 if the conversion fails for other reasons (e.g. underflow).

If ok is not \nullptr, failure is reported by setting *{ok} to false, and success by setting *{ok} to true.

The string conversion will always happen in the 'C' locale. For locale dependent conversion use QLocale::toFloat()

See also
QString::toFloat()
Since
6.0

Definition at line 7955 of file qstring.cpp.

References QLocaleData::convertDoubleToFloat(), ok, and toDouble().

+ Here is the call graph for this function:

◆ toInt()

int QStringView::toInt ( bool * ok = nullptr,
int base = 10 ) const
inline

Returns the string view converted to an int using base base, which is 10 by default and must be between 2 and 36, or 0.

Returns 0 if the conversion fails.

If ok is not \nullptr, failure is reported by setting *{ok} to false, and success by setting *{ok} to true.

If base is 0, the C language convention is used: if the string view begins with "0x", base 16 is used; otherwise, if the string view begins with "0", base 8 is used; otherwise, base 10 is used.

The string conversion will always happen in the 'C' locale. For locale dependent conversion use QLocale::toInt()

See also
QString::toInt()
Since
6.0

Definition at line 1132 of file qstring.h.

References base, and ok.

Referenced by parseFont(), and QMessagePattern::setPattern().

+ Here is the caller graph for this function:

◆ tokenize()

template<typename Needle , typename... Flags>
template< typename Needle, typename...Flags > auto QStringView::tokenize ( Needle && needle,
Flags... flags ) const -> decltype(qTokenize(*this, std::forward<Needle>(needle), flags...))
inlineconstexprnoexcept

Definition at line 241 of file qstringview.h.

References qTokenize().

+ Here is the call graph for this function:

◆ toLatin1()

QByteArray QStringView::toLatin1 ( ) const
inline

Returns a Latin-1 representation of the string as a QByteArray.

The behavior is undefined if the string contains non-Latin1 characters.

See also
toUtf8(), toLocal8Bit(), QStringEncoder

Definition at line 196 of file qstringview.h.

References QtPrivate::convertToLatin1().

Referenced by QRasterPaintEngine::drawTextItem(), and QQmlJS::Dom::fileLocationRegionValue().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ toLocal8Bit()

QByteArray QStringView::toLocal8Bit ( ) const
inline

Returns a local 8-bit representation of the string as a QByteArray.

On Unix systems this is equivalen to toUtf8(), on Windows the systems current code page is being used.

The behavior is undefined if the string contains characters not supported by the locale's 8-bit encoding.

See also
toLatin1(), toUtf8(), QStringEncoder

Definition at line 198 of file qstringview.h.

References QtPrivate::convertToLocal8Bit().

+ Here is the call graph for this function:

◆ toLong()

long QStringView::toLong ( bool * ok = nullptr,
int base = 10 ) const
inline

Returns the string view converted to a long using base base, which is 10 by default and must be between 2 and 36, or 0.

Returns 0 if the conversion fails.

If ok is not \nullptr, failure is reported by setting *{ok} to false, and success by setting *{ok} to true.

If base is 0, the C language convention is used: if the string view begins with "0x", base 16 is used; otherwise, if the string view begins with "0", base 8 is used; otherwise, base 10 is used.

The string conversion will always happen in the 'C' locale. For locale dependent conversion use QLocale::toLong()

See also
QString::toLong()
Since
6.0

Definition at line 1128 of file qstring.h.

References base, and ok.

◆ toLongLong()

qint64 QStringView::toLongLong ( bool * ok = nullptr,
int base = 10 ) const
inline

Returns the string view converted to a {long long} using base base, which is 10 by default and must be between 2 and 36, or 0.

Returns 0 if the conversion fails.

If ok is not \nullptr, failure is reported by setting *{ok} to false, and success by setting *{ok} to true.

If base is 0, the C language convention is used: if the string view begins with "0x", base 16 is used; otherwise, if the string view begins with "0", base 8 is used; otherwise, base 10 is used.

The string conversion will always happen in the 'C' locale. For locale dependent conversion use QLocale::toLongLong()

See also
QString::toLongLong()
Since
6.0

Definition at line 1124 of file qstring.h.

References base, and ok.

◆ toShort()

short QStringView::toShort ( bool * ok = nullptr,
int base = 10 ) const
inline

Returns the string view converted to a short using base base, which is 10 by default and must be between 2 and 36, or 0.

Returns 0 if the conversion fails.

If ok is not \nullptr, failure is reported by setting *{ok} to false, and success by setting *{ok} to true.

If base is 0, the C language convention is used: if the string view begins with "0x", base 16 is used; otherwise, if the string view begins with "0", base 8 is used; otherwise, base 10 is used.

The string conversion will always happen in the 'C' locale. For locale dependent conversion use QLocale::toShort()

See also
QString::toShort()
Since
6.0

Definition at line 1136 of file qstring.h.

References base, and ok.

◆ toString()

QString QStringView::toString ( ) const
inline

Returns a deep copy of this string view's data as a QString.

The return value will be the null QString if and only if this string view is null.

Definition at line 1121 of file qstring.h.

Referenced by QSvgAttributes::QSvgAttributes(), QQmlSignalNames::addPrefixToPropertyName(), QmlIR::IRBuilder::appendAlias(), appendSeparator(), astNodeToStringList(), backendName(), QQmlJS::AST::PatternElement::boundNames(), QRegularExpressionMatch::captured(), QRegularExpressionMatch::captured(), QV4::Compiler::Codegen::defineFunction(), QQmlJS::Dom::LineWriter::ensureSpace(), QV4::Compiler::ScanFunctions::enterFunction(), QV4::RuntimeCodegen::generateFromFunctionExpression(), QQmlLSUtils::isValidEcmaScriptIdentifier(), keyString(), QQmlJS::Dom::Paths::loadInfoPath(), QV4::Compiler::ControlFlow::loopLabel(), QQmlJS::Dom::PathEls::Field::name(), QQmlJS::Dom::PathEls::Root::name(), QQmlJS::Dom::PathEls::Current::name(), QRegularExpression::namedCaptureGroups(), parseCompOp(), parseCoreNode(), QTextHtmlParser::parseEntity(), parseExtendedAttributes(), parseFont(), parseOthers(), parsePen(), parseRenderingHints(), parseServerList(), QStringMatcher::pattern(), qRelocateResourceFile(), qt_normalizePathSegments(), readInputFile(), QQmlJSMetaPropertyBinding::setTranslation(), QTextBoundaryFinder::string(), QtPrivate::XmlStringRef::toString(), QQmlJS::Dom::ScriptFormatter::visit(), QQmlJS::Dom::QQmlDomAstCreator::visit(), QQmlJS::Dom::QQmlDomAstCreator::visit(), QQmlJS::Dom::QQmlDomAstCreator::visit(), QQmlJS::Dom::QQmlDomAstCreator::visit(), QQmlJS::Dom::QQmlDomAstCreator::visit(), QQmlJS::Dom::QQmlDomAstCreator::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::ScanFunctions::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::ScanFunctions::visit(), QQmlJSImportVisitor::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::ScanFunctions::visit(), QQmlJSImportVisitor::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::ScanFunctions::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::ScanFunctions::visit(), QV4::Compiler::ScanFunctions::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::Codegen::visit(), QV4::Compiler::Codegen::visit(), QmlIR::IRBuilder::visit(), QmlIR::IRBuilder::visit(), QmlIR::IRBuilder::visit(), QmlIR::IRBuilder::visit(), QmlIR::IRBuilder::visit(), QmlIR::IRBuilder::visit(), and QQmlJSImportVisitor::visit().

◆ toUcs4()

QList< uint > QStringView::toUcs4 ( ) const
inline

Returns a UCS-4/UTF-32 representation of the string view as a QList<uint>.

UCS-4 is a Unicode codec and therefore it is lossless. All characters from this string view will be encoded in UCS-4. Any invalid sequence of code units in this string view is replaced by the Unicode replacement character (QChar::ReplacementCharacter, which corresponds to {U+FFFD}).

The returned list is not 0-terminated.

See also
toUtf8(), toLatin1(), toLocal8Bit(), QStringEncoder

Definition at line 1019 of file qlist.h.

References QtPrivate::convertToUcs4().

+ Here is the call graph for this function:

◆ toUInt()

uint QStringView::toUInt ( bool * ok = nullptr,
int base = 10 ) const
inline

Returns the string view converted to an {unsigned int} using base base, which is 10 by default and must be between 2 and 36, or 0.

Returns 0 if the conversion fails.

If ok is not \nullptr, failure is reported by setting *{ok} to false, and success by setting *{ok} to true.

If base is 0, the C language convention is used: if the string view begins with "0x", base 16 is used; otherwise, if the string view begins with "0", base 8 is used; otherwise, base 10 is used.

The string conversion will always happen in the 'C' locale. For locale dependent conversion use QLocale::toUInt()

See also
QString::toUInt()
Since
6.0

Definition at line 1134 of file qstring.h.

References base, and ok.

◆ toULong()

ulong QStringView::toULong ( bool * ok = nullptr,
int base = 10 ) const
inline

Returns the string view converted to an {unsigned long} using base base, which is 10 by default and must be between 2 and 36, or 0.

Returns 0 if the conversion fails.

If ok is not \nullptr, failure is reported by setting *{ok} to false, and success by setting *{ok} to true.

If base is 0, the C language convention is used: if the string view begins with "0x", base 16 is used; otherwise, if the string view begins with "0", base 8 is used; otherwise, base 10 is used.

The string conversion will always happen in the 'C' locale. For locale dependent conversion use QLocale::toULongLong()

See also
QString::toULong()
Since
6.0

Definition at line 1130 of file qstring.h.

References base, and ok.

◆ toULongLong()

quint64 QStringView::toULongLong ( bool * ok = nullptr,
int base = 10 ) const
inline

Returns the string view converted to an {unsigned long long} using base base, which is 10 by default and must be between 2 and 36, or 0.

Returns 0 if the conversion fails.

If ok is not \nullptr, failure is reported by setting *{ok} to false, and success by setting *{ok} to true.

If base is 0, the C language convention is used: if the string view begins with "0x", base 16 is used; otherwise, if the string view begins with "0", base 8 is used; otherwise, base 10 is used.

The string conversion will always happen in the 'C' locale. For locale dependent conversion use QLocale::toULongLong()

See also
QString::toULongLong()
Since
6.0

Definition at line 1126 of file qstring.h.

References base, and ok.

◆ toUShort()

ushort QStringView::toUShort ( bool * ok = nullptr,
int base = 10 ) const
inline

Returns the string view converted to an {unsigned short} using base base, which is 10 by default and must be between 2 and 36, or 0.

Returns 0 if the conversion fails.

If ok is not \nullptr, failure is reported by setting *{ok} to false, and success by setting *{ok} to true.

If base is 0, the C language convention is used: if the string view begins with "0x", base 16 is used; otherwise, if the string view begins with "0", base 8 is used; otherwise, base 10 is used.

The string conversion will always happen in the 'C' locale. For locale dependent conversion use QLocale::toUShort()

See also
QString::toUShort()
Since
6.0

Definition at line 1138 of file qstring.h.

References base, and ok.

◆ toUtf8()

QByteArray QStringView::toUtf8 ( ) const
inline

Returns a UTF-8 representation of the string view as a QByteArray.

UTF-8 is a Unicode codec and can represent all characters in a Unicode string like QString.

See also
toLatin1(), toLocal8Bit(), QStringEncoder

Definition at line 197 of file qstringview.h.

References QtPrivate::convertToUtf8().

Referenced by QQmlXMLHttpRequest::setOverrideCharset(), and QSSGQmlUtilities::setProperty().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ toWCharArray()

QStringView::toWCharArray ( wchar_t * array) const
inline
Since
5.14

Transcribes this string view into the given array.

The caller is responsible for ensuring array is large enough to hold the wchar_t encoding of this string view (allocating the array with the same length as the string view is always sufficient). The array is encoded in UTF-16 on platforms where wchar_t is 2 bytes wide (e.g. Windows); otherwise (Unix systems), wchar_t is assumed to be 4 bytes wide and the data is written in UCS-4.

Note
This function writes no null terminator to the end of array.

Returns the number of wchar_t entries written to array.

See also
QString::toWCharArray()

Definition at line 1296 of file qstring.h.

Referenced by QString::toWCharArray().

+ Here is the caller graph for this function:

◆ trimmed()

QStringView QStringView::trimmed ( ) const
inlinenoexcept

Strips leading and trailing whitespace and returns the result.

Whitespace means any character for which QChar::isSpace() returns true. This includes the ASCII characters '\t', '\n', '\v', '\f', '\r', and ' '.

Definition at line 238 of file qstringview.h.

References QtPrivate::trimmed().

Referenced by QQmlJS::Dom::OutWriter::OutWriter(), QQmlJS::Dom::LineWriter::addNewlinesAutospacerCallback(), fontKeys(), QFont::fromString(), hasSvgHeader(), QV4::Text::method_isElementContentWhitespace(), QMYSQLDriver::open(), parseOpacity(), parseTransform(), qSetFontSizeFromToken(), qt_font_from_string(), resolveColor(), setWidthAttribute(), and QV4::RuntimeHelpers::stringToNumber().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ truncate()

void QStringView::truncate ( qsizetype length)
inlineconstexprnoexcept

Truncates this string view to length length.

Same as {*this = left(length)}.

Note
The behavior is undefined when length < 0 or length > size().
See also
mid(), left(), right(), chopped(), chop()

Definition at line 233 of file qstringview.h.

Referenced by parseIp6(), and setWidthAttribute().

+ Here is the caller graph for this function:

◆ utf16()

const storage_type * QStringView::utf16 ( ) const
inlineconstexprnoexcept

const-pointer-to-first-ch

{storage_type} is {char16_t}.

See also
begin(), end(), data()

Definition at line 184 of file qstringview.h.

Referenced by compare().

+ Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ comparesEqual [1/3]

bool comparesEqual ( const QStringView & lhs,
const QByteArrayView & rhs )
friend

Definition at line 442 of file qstringview.h.

◆ comparesEqual [2/3]

bool comparesEqual ( const QStringView & lhs,
const QStringView & rhs )
friend

Definition at line 370 of file qstringview.h.

◆ comparesEqual [3/3]

bool comparesEqual ( const QStringView & lhs,
QChar rhs )
friend

Definition at line 381 of file qstringview.h.

◆ compareStrings() [1/9]

int compareStrings ( QBasicUtf8StringView< false > lhs,
QBasicUtf8StringView< false > rhs,
Qt::CaseSensitivity cs )
related
Since
6.0 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 1594 of file qstring.cpp.

References QUtf8::compareUtf8().

+ Here is the call graph for this function:

◆ compareStrings() [2/9]

int compareStrings ( QBasicUtf8StringView< false > lhs,
QLatin1StringView rhs,
Qt::CaseSensitivity cs )
related
Since
6.0 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 1583 of file qstring.cpp.

◆ compareStrings() [3/9]

int compareStrings ( QBasicUtf8StringView< false > lhs,
QStringView rhs,
Qt::CaseSensitivity cs )
related
Since
6.0 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 1570 of file qstring.cpp.

References Qt::CaseSensitive, QUtf8::compareUtf8(), and ucstricmp8().

+ Here is the call graph for this function:

◆ compareStrings() [4/9]

int compareStrings ( QLatin1StringView lhs,
QBasicUtf8StringView< false > rhs,
Qt::CaseSensitivity cs )
related
Since
6.0 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 1559 of file qstring.cpp.

References QUtf8::compareUtf8().

+ Here is the call graph for this function:

◆ compareStrings() [5/9]

int compareStrings ( QLatin1StringView lhs,
QLatin1StringView rhs,
Qt::CaseSensitivity cs )
related
Since
5.10 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Returns an integer that compares to 0 as lhs compares to rhs.

{search-comparison-case-sensitivity} {comparison}

Case-sensitive comparison is based exclusively on the numeric Latin-1 values of the characters and is very fast, but is not what a human would expect. Consider sorting user-visible strings with QString::localeAwareCompare().

See also
{Comparing Strings}

Definition at line 1542 of file qstring.cpp.

References Qt::CaseInsensitive, latin1nicmp(), and QtMiscUtils::qt_lencmp().

+ Here is the call graph for this function:

◆ compareStrings() [6/9]

int compareStrings ( QLatin1StringView lhs,
QStringView rhs,
Qt::CaseSensitivity cs )
related
Since
5.10 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 1521 of file qstring.cpp.

◆ compareStrings() [7/9]

int compareStrings ( QStringView lhs,
QBasicUtf8StringView< false > rhs,
Qt::CaseSensitivity cs )
related
Since
6.0 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 1510 of file qstring.cpp.

◆ compareStrings() [8/9]

int compareStrings ( QStringView lhs,
QLatin1StringView rhs,
Qt::CaseSensitivity cs )
related
Since
5.10 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Returns an integer that compares to 0 as lhs compares to rhs.

{search-comparison-case-sensitivity} {comparison}

Case-sensitive comparison is based exclusively on the numeric Unicode values of the characters and is very fast, but is not what a human would expect. Consider sorting user-visible strings with QString::localeAwareCompare().

See also
{Comparing Strings}

Definition at line 1497 of file qstring.cpp.

References Qt::CaseSensitive, ucstrcmp(), and ucstricmp().

+ Here is the call graph for this function:

◆ compareStrings() [9/9]

int compareStrings ( QStringView lhs,
QStringView rhs,
Qt::CaseSensitivity cs )
related
Since
5.10

Returns an integer that compares to 0 as lhs compares to rhs.

{search-comparison-case-sensitivity} {comparison}

Case-sensitive comparison is based exclusively on the numeric Unicode values of the characters and is very fast, but is not what a human would expect. Consider sorting user-visible strings with QString::localeAwareCompare().

See also
{Comparing Strings}

Definition at line 1474 of file qstring.cpp.

References Qt::CaseSensitive, ucstrcmp(), and ucstricmp().

+ Here is the call graph for this function:

◆ compareThreeWay [1/3]

Qt::strong_ordering compareThreeWay ( const QStringView & lhs,
const QByteArrayView & rhs )
friend

Definition at line 445 of file qstringview.h.

◆ compareThreeWay [2/3]

Qt::strong_ordering compareThreeWay ( const QStringView & lhs,
const QStringView & rhs )
friend

Definition at line 373 of file qstringview.h.

◆ compareThreeWay [3/3]

Qt::strong_ordering compareThreeWay ( const QStringView & lhs,
QChar rhs )
friend

Definition at line 383 of file qstringview.h.

◆ convertToLatin1()

QByteArray convertToLatin1 ( QStringView string)
related
Since
5.10

Returns a Latin-1 representation of string as a QByteArray.

The behavior is undefined if string contains non-Latin1 characters.

See also
QString::toLatin1(), QStringView::toLatin1(), QtPrivate::convertToUtf8(), QtPrivate::convertToLocal8Bit(), QtPrivate::convertToUcs4()

Definition at line 5637 of file qstring.cpp.

References qt_convert_to_latin1().

+ Here is the call graph for this function:

◆ convertToLocal8Bit()

QByteArray convertToLocal8Bit ( QStringView string)
related
Since
5.10

Returns a local 8-bit representation of string as a QByteArray.

On Unix systems this is equivalent to toUtf8(), on Windows the systems current code page is being used.

The behavior is undefined if string contains characters not supported by the locale's 8-bit encoding.

See also
QString::toLocal8Bit(), QStringView::toLocal8Bit()

Definition at line 5758 of file qstring.cpp.

References qt_convert_to_local_8bit().

+ Here is the call graph for this function:

◆ convertToUcs4()

QList< uint > convertToUcs4 ( QStringView string)
related
Since
5.10

Returns a UCS-4/UTF-32 representation of string as a QList<uint>.

UCS-4 is a Unicode codec and therefore it is lossless. All characters from this string will be encoded in UCS-4. Any invalid sequence of code units in this string is replaced by the Unicode's replacement character (QChar::ReplacementCharacter, which corresponds to {U+FFFD}).

The returned list is not \0'-terminated.

See also
QString::toUcs4(), QStringView::toUcs4(), QtPrivate::convertToLatin1(), QtPrivate::convertToLocal8Bit(), QtPrivate::convertToUtf8()

Definition at line 5856 of file qstring.cpp.

References qt_convert_to_ucs4().

+ Here is the call graph for this function:

◆ convertToUtf8()

QByteArray convertToUtf8 ( QStringView string)
related
Since
5.10

Returns a UTF-8 representation of string as a QByteArray.

UTF-8 is a Unicode codec and can represent all characters in a Unicode string like QStringView.

See also
QString::toUtf8(), QStringView::toUtf8()

Definition at line 5801 of file qstring.cpp.

References qt_convert_to_utf8().

+ Here is the call graph for this function:

◆ endsWith()

bool endsWith ( QLatin1StringView haystack,
QLatin1StringView needle,
Qt::CaseSensitivity cs )
related
Since
5.10

Returns true if haystack ends with needle, otherwise returns false.

{search-comparison-case-sensitivity} {search}

See also
QtPrivate::startsWith(), QString::endsWith(), QStringView::endsWith(), QLatin1StringView::endsWith()

◆ isRightToLeft()

bool isRightToLeft ( QStringView string)
related
Since
5.11

Returns true if the string is read right to left.

See also
QString::isRightToLeft()

Definition at line 9665 of file qstring.cpp.

References QStringIterator::hasNext(), and i.

+ Here is the call graph for this function:

◆ qHash()

size_t qHash ( QStringView key,
size_t seed = 0 )
related
Since
5.10

Returns the hash value for the key, using seed to seed the calculation.

Definition at line 1119 of file qhash.cpp.

References qHashBits(), and seed.

+ Here is the call graph for this function:

◆ startsWith()

bool startsWith ( QLatin1StringView haystack,
QLatin1StringView needle,
Qt::CaseSensitivity cs )
related
Since
5.10

Returns true if haystack starts with needle, otherwise returns false.

{search-comparison-case-sensitivity} {search}

See also
QtPrivate::endsWith(), QString::endsWith(), QStringView::endsWith(), QLatin1StringView::endsWith()

◆ trimmed()

QLatin1StringView trimmed ( QLatin1StringView s)
related
Since
5.10

Returns s with whitespace removed from the start and the end.

Whitespace means any character for which QChar::isSpace() returns true. This includes the ASCII characters '\t', '\n', '\v', '\f', '\r', and ' '.

See also
QString::trimmed(), QStringView::trimmed(), QLatin1StringView::trimmed()

The documentation for this class was generated from the following files: