이 페이지에서

QStringView Class

QStringView 클래스는 QString API의 읽기 전용 하위 집합을 사용하여 UTF-16 문자열에 대한 통합된 뷰를 제공합니다. 더 보기...

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

참고: 이 클래스의 모든 함수는 재진입 가능합니다.

공개 유형

공개 함수

QStringView()
QStringView(const Char (&string)[N])
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

정적 공용 멤버

QStringView fromArray(const Char (&string)[Size])
(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)

상세 설명

QStringView는 자신이 소유하지 않은 UTF-16 문자열의 연속된 부분을 참조합니다. 이 클래스는 먼저 QString 을 생성할 필요 없이 모든 종류의 UTF-16 문자열에 대한 인터페이스 유형 역할을 합니다.

UTF-16 문자열은 QChar, ushort, char16_t 또는 (Windows와 같이 16비트 유형인 플랫폼의 경우) wchar_t 의 배열(또는 QString, std::basic_string 등과 같은 배열 호환 데이터 구조)로 표현될 수 있습니다.

QStringView는 인터페이스 유형으로 설계되었으며, 주로 함수 매개변수 유형으로 사용됩니다. QStringView를 자동 변수나 데이터 멤버로 사용할 때는, 참조되는 문자열 데이터(예: QString 가 소유한 데이터)가 모든 코드 경로에서 QStringView보다 오래 유지되도록 주의해야 합니다. 그렇지 않으면 문자열 뷰가 삭제된 데이터를 참조하게 될 수 있습니다.

인터페이스 유형으로 사용될 때, QStringView를 통해 단일 함수가 다양한 UTF-16 문자열 데이터 소스를 받아들일 수 있습니다. 따라서 QStringView를 받아들이는 하나의 함수는 ( QString 와 (const QChar*, qsizetype) 를 매개변수로 받는) 세 개의 함수 오버로드를 대체하는 동시에, u"Hello World" 나 char16_t 문자열 리터럴과 같은 더 많은 문자열 데이터 소스를 함수에 전달할 수 있게 해줍니다.

QStringView는 const 참조가 아닌 값으로 전달되어야 합니다:

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

사용자가 함수에 전달할 수 있는 문자열의 종류에 최대한의 자유를 부여하려면, QStringView 오버로드와 함께

  • QChar용 오버로드를 함께 제공하십시오. 이 오버로드는 QStringView 버전에 위임할 수 있습니다:
    void fun(QChar ch) { myfun1(QStringView(&ch, 1)); }

    비록 기술적인 이유로 QStringView 자체가 ` QChar ` 생성자를 제공할 수는 없지만 말입니다.

  • QString: 문자열의 수정되지 않은 복사본을 저장하여 QString 의 암시적 공유 기능을 활용하고자 하는 경우.
  • QLatin1StringView: QLatin1StringView 를 먼저 UTF-16으로 변환하지 않고 함수를 구현할 수 있는 경우; 사용자는 QLatin1StringView 에 오버로드된 함수가, QLatin1StringView 에서 QString 를 생성하는 것을 포함하는 QStringView 버전의 의미상 동등한 호출보다 메모리 할당 횟수가 확실히 적을 것으로 기대합니다.

QStringView는 함수의 반환값으로도 사용할 수 있습니다. QStringView를 반환하는 함수를 호출할 경우, 해당 함수가 참조하는 문자열 데이터를 유지하겠다고 약속한 기간보다 QStringView를 더 오래 유지하지 않도록 각별히 주의해야 합니다. 확실하지 않은 경우, toString()를 호출하여 QStringView를 QString 로 변환함으로써 데이터에 대한 강력한 참조를 확보하십시오.

QStringView는 리터럴 타입이지만, 데이터를 char16_t 형태로 저장하기 때문에 반복 처리가 constexpr 하지 않습니다( const char16_t* 에서 const QChar* 으로의 형 변환은 constexpr 함수에서 허용되지 않습니다). 대신 constexpr 환경에서 인덱스 루프 및/또는 utf16()을 사용할 수 있습니다.

‘어떤 문자열 클래스를 사용해야 할까요? ’ 및 ‘ QString’도 참조하십시오 .

멤버 유형 문서

QStringView::const_iterator

이 typedef는 ` QStringView`에 대해 STL 스타일의 const 이터레이터를 제공합니다.

iterator 및 const_reverse_iterator도 참조하십시오 .

QStringView::const_pointer

value_type * 의 별칭입니다. STL과의 호환성을 위해 제공됩니다.

QStringView::const_reference

value_type & 의 별칭입니다. STL과의 호환성을 위해 제공됩니다.

QStringView::const_reverse_iterator

이 typedef는 ` QStringView`에 대해 STL 스타일의 const 역방향 이터레이터를 제공합니다.

reverse_iterator 및 const_iterator도 참조하십시오 .

QStringView::difference_type

std::ptrdiff_t 의 별칭입니다. STL과의 호환성을 위해 제공됩니다.

QStringView::iterator

이 typedef는 ` QStringView`에 대해 STL 스타일의 const 이터레이터를 제공합니다.

QStringView 변경 가능한 이터레이터를 지원하지 않으므로, 이는 const_iterator 과 동일합니다.

const_iterator 및 reverse_iterator도 참조하십시오 .

QStringView::pointer

value_type * 의 별칭입니다. STL과의 호환성을 위해 제공됩니다.

QStringView 가변 포인터를 지원하지 않으므로, 이는 const_pointer 과 동일합니다.

QStringView::reference

value_type & 의 별칭입니다. STL과의 호환성을 위해 제공됩니다.

QStringView 가변 참조를 지원하지 않으므로, 이는 const_reference 와 동일합니다.

QStringView::reverse_iterator

이 typedef는 ` QStringView`에 대해 STL 스타일의 const 역방향 이터레이터를 제공합니다.

QStringView const_reverse_iterator 는 가변 역방향 이터레이터를 지원하지 않으므로, 이는 와 동일합니다.

const_reverse_iterator 및 iterator도 참조하십시오 .

QStringView::size_type

qsizetype의 별칭입니다. STL과의 호환성을 위해 제공됩니다.

QStringView::storage_type

char16_t 의 별칭.

QStringView::value_type

const QChar 의 별칭입니다. STL과의 호환성을 위해 제공됩니다.

멤버 함수 설명서

[constexpr noexcept] QStringView::QStringView()

빈 문자열 뷰를 생성합니다.

isNull()도 참조하십시오 .

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

문자열 리터럴 ` string`을 기반으로 문자열 뷰를 생성합니다. 이 뷰는 첫 번째 ` Char(0) `이 나타나거나 ` N`가 발생할 때까지, 둘 중 먼저 발생하는 시점까지 배열을 포함합니다. 배열 전체가 필요한 경우에는 대신 ` fromArray()`를 사용하십시오.

string 이 문자열 뷰 객체의 수명 기간 동안 유효해야 합니다.

제약 조건

Char 가 호환 가능한 문자 유형인 경우에만 오버로드 해결에 참여합니다. 호환 가능한 문자 유형은 다음과 같습니다: QChar, ushort, char16_t 및 (Windows와 같이 16비트 유형인 플랫폼의 경우) wchar_t.

fromArray도 참조하십시오 .

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

str 에 문자열 뷰를 생성합니다. 길이는 첫 번째 Char(0) 를 찾아 스캔하여 결정됩니다.

str 이 문자열 뷰 객체의 수명 기간 동안 유효한 상태를 유지해야 합니다.

` nullptr `을 ` str `로 전달하는 것은 안전하며, 이 경우 빈 문자열 뷰가 생성됩니다.

제약 조건

Char 가 호환 가능한 문자 유형인 경우에만 오버로드 해결에 참여합니다. 호환 가능한 문자 유형은 QChar, ushort, char16_t 및 (Windows와 같이 16비트 유형인 플랫폼의 경우) wchar_t 입니다.

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

str 에 문자열 뷰를 생성합니다. 길이는 std::size(str) 에서 가져옵니다.

std::data(str) 이 문자열 뷰 객체의 수명 기간 동안 유효한 상태를 유지해야 합니다.

std::size(str) == 0 인 경우에만 문자열 뷰가 비어 있습니다. 이 생성자가 null 문자열 뷰를 생성할 수 있는지 여부는 명시되지 않았습니다(이를 위해서는std::data(str) 가 nullptr 를 반환해야 합니다).

제약 조건

Container 가 value_type 와 호환되는 문자 유형을 가진 컨테이너인 경우에만 오버로드 해결에 참여합니다. 호환되는 문자 유형은 QChar, ushort, char16_t 및 (Windows와 같이 16비트 유형인 플랫폼의 경우) wchar_t 입니다.

isNull() 및 isEmpty()도 참조하십시오 .

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

str 에 문자열 뷰를 생성합니다.

str.data() 이 문자열 뷰 객체의 수명 기간 동안 유효한 상태를 유지해야 합니다.

str.isNull() 인 경우에만 문자열 뷰가 null이 됩니다.

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

빈 문자열 뷰를 생성합니다.

isNull()도 참조하십시오 .

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

first 에 길이 (last - first)인 문자열 뷰를 생성합니다.

[first,last) 범위는 이 문자열 뷰 객체의 수명 기간 동안 유효해야 합니다.

last 또한 nullptr 인 경우 \nullptr 를 first 로 전달하는 것은 안전하며, 그 결과 null 문자열 뷰가 생성됩니다.

last 이 first 보다 앞서거나, first 이 nullptr 인 반면 last 이 그렇지 않은 경우, 동작은 정의되지 않습니다.

제약 조건

Char 가 호환 가능한 문자 유형인 경우에만 오버로드 해결에 참여합니다. 호환 가능한 문자 유형은 다음과 같습니다: QChar, ushort, char16_t 및 (Windows와 같이 16비트 유형인 플랫폼의 경우) wchar_t.

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

str 에 길이 len 인 문자열 뷰를 생성합니다.

[str,len) 범위는 이 문자열 뷰 객체의 수명 기간 동안 유효해야 합니다.

len 가 0인 경우 nullptr 를 str 로 전달하는 것은 안전하며, 이 경우 null 문자열 뷰가 생성됩니다.

len 가 음수이거나, 양수인 경우 str 가 nullptr 인 경우 동작은 정의되지 않습니다.

제약 조건

Char 가 호환 가능한 문자형일 경우에만 오버로드 해결에 참여합니다. 호환 가능한 문자형은 다음과 같습니다: QChar, ushort, char16_t 및 (Windows와 같이 16비트 유형인 플랫폼의 경우) wchar_t.

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

이 문자열에서 %N 가 나타나는 부분을 args 의 해당 인수로 대체합니다. 인수는 위치에 따라 구분되지 않습니다. 즉, args 의 첫 번째 인수는 %N 를 가장 낮은 N (모두)로 대체하고, args 의 두 번째 인수는 %N 를 그 다음으로 낮은 N 로 대체하는 식입니다.

Args QAnyStringView 로 암시적으로 변환되는 모든 것으로 구성될 수 있습니다.

참고: Qt 6.9 이전버전에서는 QAnyStringView 및 UTF-8 문자열(QUtf8StringView, QByteArray, QByteArrayView, const char8_t* 등)이 args 로 지원되지 않았습니다.

QString::arg()도 참조하십시오 .

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

이 문자열 뷰에서 n 위치에 있는 문자를 반환합니다.

n 가 음수이거나 size()보다 크거나 같을 경우 동작이 정의되지 않습니다.

operator[](), front() 및 back()도 참조하십시오 .

[constexpr] QChar QStringView::back() const

문자열 뷰의 마지막 문자를 반환합니다. ` last()`와 동일합니다.

이 함수는 STL 호환성을 위해 제공됩니다.

경고: 빈 문자열 뷰에 대해 이 함수를호출하면 정의되지 않은 동작이 발생합니다.

front(), first() 및 last()도 참조하십시오 .

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

문자열 뷰의 첫 번째 문자를 가리키는 const STL 스타일의 이터레이터를 반환합니다.

이 함수는 STL 호환성을 위해 제공됩니다.

end(), constBegin(), cbegin(), rbegin(), data()도 참조하십시오 .

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

begin()와 동일합니다.

이 함수는 STL 호환성을 위해 제공됩니다.

cend(), begin(), constBegin(), crbegin() 및 data()도 참조하십시오 .

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

end()와 동일합니다.

이 함수는 STL 호환성을 위해 제공됩니다.

cbegin(), end(), constEnd() 및 crend()도 참조하십시오 .

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

이 문자열 뷰를 length 개 문자로 잘라냅니다.

*this = left(size() - length) 와 동일합니다.

참고: length < 0이거나 length > size()인 경우동작이 정의되지 않습니다.

sliced(), left(), right(), chopped(), truncate(), slice()도 참조하십시오 .

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

이 객체의 시작 부분부터 길이 size() - length 인 부분 문자열을 반환합니다.

left(size() - length) 와 동일합니다.

참고: length < 0이거나 length > size()인 경우동작이 정의되지 않습니다.

sliced(), left(), right(), chop(), truncate() 및 slice()도 참조하십시오 .

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

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

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

이 문자열 뷰를 Latin-1 문자열 뷰 l1 또는 문자 ch 와 비교합니다. 이 문자열 뷰가 l1 또는 ch 보다 작으면 음의 정수를, l1 또는 ch 보다 크면 양의 정수를, 둘이 같으면 0을 반환합니다.

cs 가 Qt::CaseSensitive (기본값)인 경우, 비교 시 대소문자를 구분하며, 그렇지 않은 경우 대소문자를 구분하지 않습니다.

operator==(), operator<(), operator>()도 참조하십시오 .

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

이 문자열 뷰와 str 에 있는 문자열 뷰를 비교하여, 이 문자열 뷰가 str 보다 작으면 음의 정수를, str 보다 크면 양의 정수를, 둘이 같으면 0을 반환합니다.

cs 가 Qt::CaseSensitive (기본값)인 경우, 비교는 대소문자를 구분하며, 그렇지 않은 경우 대소문자를 구분하지 않습니다.

operator==(), operator<(), operator>()도 참조하십시오 .

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

이 문자열 뷰와 QUtf8StringView str 을 비교하여, 이 문자열 뷰가 str 보다 작으면 음의 정수를, str 보다 크면 양의 정수를, 둘이 같으면 0을 반환합니다.

cs 가 Qt::CaseSensitive (기본값)인 경우, 대소문자를 구분하여 비교하며, 그렇지 않은 경우 대소문자를 구분하지 않고 비교합니다.

이 함수는 Qt 6.5에서 도입되었습니다.

operator==(), operator<(), operator>()도 참조하십시오 .

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

begin()와 동일합니다.

이 함수는 Qt 6.1에서 도입되었습니다.

constEnd(), begin(), cbegin(), crbegin(), data()도 참조하십시오 .

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

문자열 뷰의 첫 번째 문자에 대한 const 포인터를 반환합니다.

참고: 반환값이 나타내는 문자 배열은 null로 끝나지 않습니다.

이 함수는 Qt 6.0에서 도입되었습니다.

data(), begin(), end(), utf16()도 참조하십시오 .

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

end()와 동일합니다.

이 함수는 Qt 6.1에서 도입되었습니다.

constBegin(), end(), cend(), crend()도 참조하십시오 .

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

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

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

이 문자열 뷰에 str 에서 표시되는 UTF-16 문자열, l1 에서 표시되는 Latin-1 문자열, 또는 ch 에서 표시되는 문자가 포함되어 있으면 true 를 반환하고, 그렇지 않으면 false 를 반환합니다.

cs 가 Qt::CaseSensitive (기본값)인 경우, 검색은 대소문자를 구분하며, 그렇지 않은 경우 대소문자를 구분하지 않습니다.

indexOf()도 참조하십시오 .

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

정규식 re 이 이 문자열 뷰의 어느 곳에서든 일치하면 true 을 반환하고, 그렇지 않으면 false 을 반환합니다.

일치하는 부분이 있고 rmatch 가 nullptr 와 다를 경우, 일치 결과를 rmatch 가 가리키는 QRegularExpressionMatch 객체에 기록합니다.

이 함수는 Qt 6.1에서 도입되었습니다.

QRegularExpression::match()도 참조하십시오 .

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

re 정규 표현식이 문자열 뷰에서 일치하는 횟수를 반환합니다.

역사적인 이유로, 이 함수는 중복되는 일치 항목도 카운트합니다. 이 동작은 ` QRegularExpressionMatchIterator`을 사용하여 문자열 뷰 내의 일치 항목을 단순히 반복 처리하는 방식과는 다릅니다.

이 함수는 Qt 6.1에서 도입되었습니다.

QRegularExpression::globalMatch()도 참조하십시오 .

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

문자열 뷰에서 ‘ ch ’가 나타나는 횟수를 반환합니다.

cs 가 Qt::CaseSensitive (기본값)인 경우 대소문자를 구분하여 검색하며, 그렇지 않은 경우 대소문자를 구분하지 않고 검색합니다.

이 함수는 ` QStringView::count()`을 오버로드합니다.

이 함수는 Qt 6.0에서 도입되었습니다.

QString::count(), contains() 및 indexOf()도 참조하십시오 .

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

이 문자열 뷰에서 l1 에 의해 인식된 Latin-1 문자열이 (중복될 수 있는) 몇 번 나타나는지 반환합니다.

cs 가 ` Qt::CaseSensitive `(기본값)인 경우 대소문자를 구분하여 검색하며, 그렇지 않은 경우 대소문자를 구분하지 않고 검색합니다.

이 함수는 QStringView::count()을 오버로드합니다.

이 함수는 Qt 6.4에서 도입되었습니다.

QString::count(), contains() 및 indexOf()도 참조하십시오 .

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

이 문자열 뷰 내에서 “ str ” 문자열이 (중복될 수 있는) 몇 번 나타나는지 반환합니다.

cs 가 Qt::CaseSensitive 인 경우(기본값), 대소문자를 구분하여 검색하며, 그렇지 않은 경우 대소문자를 구분하지 않고 검색합니다.

이 함수는 QStringView::count()을 오버로드합니다.

이 함수는 Qt 6.0에서 도입되었습니다.

QString::count(), contains() 및 indexOf()도 참조하십시오 .

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

rbegin()와 동일합니다.

이 함수는 STL 호환성을 위해 제공됩니다.

crend(), rbegin() 및 cbegin()도 참조하십시오 .

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

rend()와 동일합니다.

이 함수는 STL 호환성을 위해 제공됩니다.

crbegin(), rend() 및 cend()도 참조하십시오 .

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

문자열 뷰의 첫 번째 문자에 대한 const 포인터를 반환합니다.

참고: 반환값으로 표현되는 문자 배열은 null로 끝나지 않습니다.

참조: begin(), end(), utf16().

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

이 문자열 뷰가 비어 있는지, 즉 ` size() == 0`인지 여부를 반환합니다.

이 함수는 STL 호환성을 위해 제공됩니다.

isEmpty(), isNull(), size(), length()도 참조하십시오 .

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

목록의 마지막 문자 다음에 오는 가상의 문자를 가리키는 const STL 스타일의 반복자를 반환합니다.

이 함수는 STL 호환성을 위해 제공됩니다.

begin(), constEnd(), cend(), rend()도 참조하십시오 .

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

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

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

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

이 문자열 뷰가 str 에서 표시되는 UTF-16 문자열, l1 에서 표시되는 Latin-1 문자열, 또는 ch 에서 표시되는 문자로 끝나는 경우 true 를 반환하고, 그렇지 않은 경우 false 를 반환합니다.

cs 가 Qt::CaseSensitive (기본값)인 경우, 검색은 대소문자를 구분합니다. 그렇지 않은 경우, 검색은 대소문자를 구분하지 않습니다.

startsWith()도 참조하십시오 .

[constexpr] QChar QStringView::first() const

문자열 뷰의 첫 번째 문자를 반환합니다. ` front()`와 동일합니다.

이 함수는 다른 Qt 컨테이너와의 호환성을 위해 제공됩니다.

경고: 빈 문자열 뷰에서 이 함수를호출하면 정의되지 않은 동작이 발생합니다.

참조: front(), back(), last().

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

이 문자열 뷰의 처음 n 자를 가리키는 문자열 뷰를 반환합니다.

참고: n < 0이거나 n > size()인 경우동작이 정의되지 않습니다.

이 함수는 Qt 6.0에서 도입되었습니다.

last(), sliced(), startsWith(), chopped(), chop(), truncate() 및 slice()도 참조하십시오 .

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

Size 개의 요소로 구성된 전체 문자열 리터럴 string 에 대해, 끝에 있는 Char(0) 를 포함하여 문자열 뷰를 생성합니다. 뷰에 null 종결자를 포함하지 않으려면, 해당 종결자가 끝 부분임을 확실히 알 때 chop()를 호출하여 제외할 수 있습니다. 또는 배열 리터럴을 인수로 받는 생성자 오버로드를 사용할 수 있는데, 이 경우 데이터 내의 첫 번째 null-terminator 바로 앞까지(해당 문자는 제외) 뷰를 생성합니다.

string 이 문자열 뷰 객체의 수명 기간 동안 유효해야 합니다.

Char 가 호환 가능한 문자 유형인 경우, 이 함수는 모든 배열 리터럴에서 작동합니다. 호환 가능한 문자 유형은 다음과 같습니다. QChar, ushort, char16_t 및 (Windows와 같이 16비트 유형인 플랫폼의 경우) wchar_t.

[constexpr] QChar QStringView::front() const

문자열 뷰의 첫 번째 문자를 반환합니다. ` first()`와 동일합니다.

이 함수는 STL 호환성을 위해 제공됩니다.

경고: 빈 문자열 뷰에 대해 이 함수를호출하면 정의되지 않은 동작이 발생합니다.

back(), first, last도 참조하십시오 .

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

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

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

이 문자열 뷰에서 인덱스 위치 from 부터 앞으로 검색하여, str 로 표시된 UTF-16 문자열, l1 로 표시된 Latin-1 문자열, 또는 ch 로 표시된 문자가 각각 처음 나타나는 인덱스 위치를 반환합니다. str, l1 또는 ch 가 각각 발견되지 않으면 -1을 반환합니다.

cs 가 Qt::CaseSensitive (기본값)인 경우, 검색은 대소문자를 구분하며, 그렇지 않은 경우 대소문자를 구분하지 않습니다.

from 가 -1이면 검색은 마지막 문자로부터 시작하고, -2이면 마지막에서 두 번째 문자로부터 시작하는 식으로 진행됩니다.

QString::indexOf()함수도 참조하십시오 .

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

인덱스 위치 from 부터 앞으로 검색하여, 문자열 뷰에서 정규식 re 의 첫 번째 일치 항목의 인덱스 위치를 반환합니다. re 가 어디에도 일치하지 않으면 -1을 반환합니다.

일치하는 부분이 있고 rmatch 가 nullptr 와 다를 경우, 일치 결과를 rmatch 가 가리키는 QRegularExpressionMatch 객체에 기록합니다.

참고: 정규식 일치 알고리즘의 작동 방식에따라 , 이 함수는 실제로 문자열 뷰의 시작 부분부터 from 위치에 도달할 때까지 반복적으로 일치를 수행합니다.

이 함수는 Qt 6.1에서 도입되었습니다.

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

이 문자열 뷰가 비어 있는지, 즉 ` size() == 0`인지 여부를 반환합니다.

이 함수는 다른 Qt 컨테이너와의 호환성을 위해 제공됩니다.

empty(), isNull(), size() 및 length()도 참조하십시오 .

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

이 뷰가 소문자 변환된 형태와 동일할 경우 ` true `를 반환합니다.

이는 문자열 뷰에 대문자가 포함되어 있지 않다는 것을 의미하지는 않습니다 (일부 대문자는 소문자 변환 형태가 없으며, toString()의 toLower() 함수를 통해 변환되지 않습니다). 자세한 내용은 유니코드 표준 3.13절을 참조하십시오.

이 함수는 Qt 6.7에서 도입되었습니다.

QChar::toLower() 및 isUpper()도 참조하십시오 .

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

이 문자열 뷰가 null인지, 즉 ` data() == nullptr`인지 여부를 반환합니다.

이 함수는 다른 Qt 컨테이너와의 호환성을 위해 제공됩니다.

empty(), isEmpty(), size() 및 length()도 참조하십시오 .

[noexcept] bool QStringView::isRightToLeft() const

문자열 뷰가 오른쪽에서 왼쪽으로 읽히는 경우 ` true `를 반환합니다.

QString::isRightToLeft()도 참조하십시오 .

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

이 뷰가 대문자 변환된 형태와 동일할 경우 ` true `를 반환합니다.

단, 이것이 문자열 뷰에 소문자가 포함되어 있지 않다는 것을 의미하지는 않습니다 (일부 소문자에는 대문자 변환이 없으며, 이러한 문자는 toString().toUpper()에 의해 변경되지 않습니다). 자세한 내용은 유니코드 표준 3.13절을 참조하십시오.

이 함수는 Qt 6.7에서 도입되었습니다.

QChar::toUpper() 및 isLower()도 참조하십시오 .

[noexcept] bool QStringView::isValidUtf16() const

문자열 뷰에 유효한 UTF-16 인코딩 데이터가 포함되어 있으면 ` true `를 반환하고, 그렇지 않으면 ` false `를 반환합니다.

이 함수는 데이터에 대한 특별한 유효성 검사를 수행하지 않으며, 단지 UTF-16에서 성공적으로 디코딩될 수 있는지만 확인한다는 점에 유의하십시오. 데이터는 호스트 바이트 순서로 되어 있는 것으로 간주되며, BOM의 유무는 의미가 없습니다.

QString::isValidUtf16()도 참조하십시오 .

[constexpr] QChar QStringView::last() const

문자열 뷰의 마지막 문자를 반환합니다. ` back()`와 동일합니다.

이 함수는 다른 Qt 컨테이너와의 호환성을 위해 제공됩니다.

경고: 빈 문자열 뷰에서 이 함수를호출하면 정의되지 않은 동작이 발생합니다.

참조: back(), front(), first().

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

이 문자열 뷰의 마지막 n 문자를 가리키는 문자열 뷰를 반환합니다.

참고: n < 0이거나 n > size()인 경우동작이 정의되지 않습니다.

이 함수는 Qt 6.0에서 도입되었습니다.

first(), sliced(), endsWith(), chopped(), chop(), truncate() 및 slice()도 참조하십시오 .

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

문자열 뷰에서 정규식 re 의 마지막 일치 위치의 인덱스를 반환합니다. re 가 어디에도 일치하지 않으면 -1을 반환합니다.

일치하는 부분이 있고 rmatch 가 nullptr 와 다를 경우, 일치 결과를 rmatch 가 가리키는 QRegularExpressionMatch 객체에 기록합니다.

참고: 정규식 일치 알고리즘의 작동 방식때문에 , 이 함수는 문자열 뷰의 시작 부분부터 끝 부분에 도달할 때까지 실제로 반복적으로 일치를 수행합니다.

이 함수는 Qt 6.2에서 도입되었습니다.

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

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

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

이 문자열 뷰에서 from 인덱스 위치부터 역방향으로 검색하여, str 로 확인된 UTF-16 문자열, l1 로 확인된 Latin-1 문자열, 또는 ch 로 확인된 문자가 각각 마지막으로 나타나는 인덱스 위치를 반환합니다.

from 가 -1이면 검색은 마지막 문자로부터 시작하고, -2이면 두 번째 마지막 문자로부터 시작하며, 이와 같은 방식으로 진행됩니다.

str, l1 또는 ch 이 각각 발견되지 않으면 -1을 반환합니다.

cs 가 Qt::CaseSensitive (기본값)인 경우 대소문자를 구분하여 검색하며, 그렇지 않은 경우 대소문자를 구분하지 않고 검색합니다.

참고: 길이가 0인 str 또는 l1 을 검색할때 , 음수의 from 을 지정하면 데이터 끝부분의 일치 항목이 검색에서 제외됩니다. 비록 -1 이 일반적으로 문자열 뷰의 끝에서 검색하는 것으로 여겨지지만, 끝부분의 일치 항목은 마지막 문자 뒤에 위치하므로 제외됩니다. 이러한 마지막 빈 일치 항목을 포함하려면, ` from `에 양수 값을 지정하거나 ` from ` 매개변수를 아예 생략하십시오.

QString::lastIndexOf()도 참조하십시오 .

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

문자열 뷰에서 정규식 ` re `의 마지막 일치 항목 중, 인덱스 위치 ` from`보다 앞쪽에서 시작되는 항목의 인덱스 위치를 반환합니다.

from 이 -1인 경우 검색은 마지막 문자로부터 시작하고, -2인 경우에서 두 번째 문자로부터 시작하며, 이와 같은 방식으로 진행됩니다.

re 가 어디에서도 일치하지 않으면 -1을 반환합니다.

일치하는 부분이 있고 rmatch 가 nullptr 와 다를 경우, rmatch 가 가리키는 QRegularExpressionMatch 객체에도 일치 결과를 기록합니다.

참고: 정규식 일치 알고리즘의 작동 방식에따라 , 이 함수는 실제로 문자열 뷰의 시작 부분부터 from 위치에 도달할 때까지 반복적으로 일치를 시도합니다.

참고: 0개의 문자와 일치할 수도 있는 정규식 re 을 검색할때 , -1 은 일반적으로 문자열 뷰의 끝에서 검색하는 것으로 간주되지만, 음수 from 을 지정하면 데이터 끝 부분의 일치는 검색에서 제외됩니다. 끝 부분의 일치는 마지막 문자 뒤에 위치하므로 제외됩니다. 이러한 마지막 빈 일치 결과를 포함하려면, ` from `에 양의 값을 지정하거나 ` from ` 매개변수를 아예 생략해야 합니다.

이 함수는 Qt 6.1에서 도입되었습니다.

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

이 함수는 ` QStringView::lastIndexOf()`을 오버로드합니다.

이 함수는 Qt 6.3에서 도입되었습니다.

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

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

이 문자열 뷰의 마지막 문자부터 역방향으로 검색하여, str 로 표시되는 UTF-16 문자열 또는 l1 로 표시되는 Latin-1 문자열이 마지막으로 나타나는 인덱스 위치를 반환합니다. str 또는 l1 가 각각 발견되지 않으면 -1을 반환합니다.

cs 가 Qt::CaseSensitive (기본값)인 경우, 검색은 대소문자를 구분하며, 그렇지 않은 경우 대소문자를 구분하지 않습니다.

이 함수들은 Qt 6.2에서 도입되었습니다.

QString::lastIndexOf()도 참조하십시오 .

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

size()와 동일합니다.

이 함수는 다른 Qt 컨테이너와의 호환성을 위해 제공됩니다.

empty(), isEmpty(), isNull(), size()도 참조하십시오 .

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

이 문자열 뷰와 ` other ` 문자열 뷰를 비교하여, 이 문자열 뷰가 ` other ` 문자열 뷰보다 작거나, 같거나, 크면 각각 0보다 작은 정수, 0, 0보다 큰 정수를 반환합니다.

비교는 로케일 및 플랫폼에 따라 수행됩니다. 이 함수를 사용하여 사용자에게 정렬된 문자열 목록을 표시할 수 있습니다.

이 함수는 Qt 6.4에서 도입되었습니다.

Comparing Strings도 참조하십시오 .

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

이 함수는 뷰가 이론적으로 표현할 수 있는 요소의 최대 개수를 반환합니다. 실제로는 시스템에서 사용할 수 있는 메모리 양에 따라 이 개수가 훨씬 적을 수 있습니다.

이 함수는 Qt 6.8에서 도입되었습니다.

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

이 함수는 STL 호환성을 위해 제공됩니다.

maxSize()를 반환합니다.

이 함수는 Qt 6.8에서 도입되었습니다.

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

문자열 뷰의 첫 번째 문자를 역순으로 가리키는 const STL 스타일의 역방향 이터레이터를 반환합니다.

이 함수는 STL 호환성을 위해 제공됩니다.

rend(), crbegin(), begin()도 참조하십시오 .

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

문자열 뷰의 마지막 문자를 한 칸 지나친 위치를 가리키는, 역순의 STL 스타일 역방향 이터레이터를 반환합니다.

이 함수는 STL 호환성을 위해 제공됩니다.

rbegin(), crend() 및 end()도 참조하십시오 .

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

이 문자열 뷰의 크기를 UTF-16 코드 유닛 단위로 반환합니다(즉, 이 함수에서는 대리 쌍이 2개로 계산되며, 이는 QString 와 동일합니다).

empty(), isEmpty(), isNull(), length()도 참조하십시오 .

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

이 문자열 뷰를 수정하여 pos 위치에서 시작하도록 하고, n 코드 포인트만큼 확장합니다.

참고: pos < 0, n < 0, 또는 pos + n > size()인 경우동작이 정의되지 않습니다.

이 함수는 Qt 6.8에서 도입되었습니다.

sliced(), first(), last(), chopped(), chop() 및 truncate()도 참조하십시오 .

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

이 문자열 뷰를 수정하여 pos 위치부터 시작하여 끝까지 확장합니다.

참고: pos < 0이거나 pos > size()인 경우동작이 정의되지 않습니다.

이 함수는 오버로드된 함수입니다.

이 함수는 Qt 6.8에서 도입되었습니다.

sliced(), first(), last(), chopped(), chop() 및 truncate()도 참조하십시오 .

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

pos 위치부터 시작하여 이 문자열 뷰의 n 문자를 가리키는 문자열 뷰를 반환합니다.

참고: pos < 0, n < 0, 또는 pos + n > size()인 경우동작이 정의되지 않습니다.

이 함수는 Qt 6.0에서 도입되었습니다.

first(), last(), chopped(), chop(), truncate() 및 slice()도 참조하십시오 .

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

이 객체의 위치 pos 부터 시작하여 끝까지 이어지는 문자열 뷰를 반환합니다.

참고: pos < 0이거나 pos > size()인 경우동작이 정의되지 않습니다.

이 함수는 오버로드된 함수입니다.

이 함수는 Qt 6.0에서 도입되었습니다.

first(), last(), chopped(), chop(), truncate() 및 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

sep 가 나타나는 모든 위치에서 뷰를 부분 문자열 뷰로 분할하고, 해당 문자열 뷰들의 목록을 반환합니다.

sep, behavior 및 cs 가 어떻게 상호 작용하여 결과를 형성하는지에 대해서는 QString::split()을 참조하십시오.

참고: 이 문자열 뷰가 참조하는 데이터가 유효한 한, 반환된모든 뷰는 유효합니다. 데이터를 소멸시키면 모든 뷰가 dangling 상태가 됩니다.

이 함수들은 Qt 6.0에서 도입되었습니다.

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

정규 표현식 re 과 일치하는 모든 위치에서 문자열을 부분 문자열 뷰로 분할하고, 해당 문자열들의 목록을 반환합니다. re 이 문자열 내 어디에서도 일치하지 않는 경우, split()은 이 문자열을 뷰로 포함하는 단일 요소 목록을 반환합니다.

참고: 반환된 리스트에 포함된뷰들은 이 뷰의 하위 뷰입니다. 따라서 이들은 이 뷰와 동일한 데이터를 참조하며, 해당 데이터가 유효한 동안에만 유효합니다.

이 함수는 오버로드된 함수입니다.

이 함수는 Qt 6.0에서 도입되었습니다.

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

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

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

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

이 문자열 뷰가 str 에서 표시되는 UTF-16 문자열, l1 에서 표시되는 Latin-1 문자열, 또는 ch 에서 표시되는 문자로 시작하는 경우 각각 true 를 반환하고, 그렇지 않은 경우 false 를 반환합니다.

cs 가 Qt::CaseSensitive (기본값)인 경우, 검색은 대소문자를 구분하며, 그렇지 않은 경우 대소문자를 구분하지 않습니다.

endsWith()함수도 참조하십시오 .

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

이 QStringView 객체를 사용하여 CFString을 생성합니다.

호출자는 CFString을 소유하며, 이를 해제할 책임이 있습니다.

참고: 이 함수는 macOS 및 iOS에서만 사용할 수 있습니다.

이 함수는 Qt 6.0에서 도입되었습니다.

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

double 값으로 변환된 문자열 뷰를 반환합니다.

변환 시 오버플로가 발생하면 무한대를, 다른 이유(예: 언더플로우)로 변환에 실패하면 0.0을 반환합니다.

ok 가 nullptr 가 아닌 경우, *ok 을 false 로 설정하여 실패를 알리고, *ok 을 true 로 설정하여 성공을 알립니다.

문자열 변환은 항상 'C' 로케일에서 수행됩니다. 로케일에 따라 달라지는 변환을 원할 경우 QLocale::toDouble()을 사용하십시오.

역사적인 이유로, 이 함수는 천 단위 구분자를 처리하지 않습니다. 이러한 숫자를 변환해야 하는 경우 QLocale::toDouble()를 사용하십시오.

이 함수는 Qt 6.0에서 도입되었습니다.

QString::toDouble()도 참조하십시오 .

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

float 값으로 변환된 문자열 뷰를 반환합니다.

변환 시 오버플로우가 발생하면 무한대를 반환하고, 다른 이유(예: 언더플로우)로 변환에 실패하면 0.0을 반환합니다.

ok 가 nullptr 가 아닌 경우, *ok 를 false 로 설정하여 실패를 알리고, *ok 를 true 로 설정하여 성공을 알립니다.

문자열 변환은 항상 'C' 로케일에서 수행됩니다. 로케일에 의존하는 변환을 사용하려면 QLocale::toFloat()을 사용하십시오.

이 함수는 Qt 6.0에서 도입되었습니다.

QString::toFloat()도 참조하십시오 .

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

기본값이 10이며 2에서 36 사이의 값 또는 0이어야 하는 base base 를 사용하여 문자열 뷰를 int 로 변환한 결과를 반환합니다. 변환에 실패하면 0을 반환합니다.

ok 가 nullptr 와 다를 경우, *ok 를 false 로 설정하여 실패를 알리고, *ok 를 true 로 설정하여 성공을 알립니다.

base 가 0인 경우, C 언어 규칙이 적용됩니다. 즉, 문자열 뷰가 "0x"로 시작하면 16진수가 사용되고, 그렇지 않은 경우 문자열 뷰가 "0"으로 시작하면 8진수가 사용되며, 그 외의 경우에는 10진수가 사용됩니다.

문자열 변환은 항상 'C' 로케일에서 수행됩니다. 로케일에 따라 달라지는 변환을 원할 경우 QLocale::toInt()을 사용하십시오.

이 함수는 Qt 6.0에서 도입되었습니다.

QString::toInt()도 참조하십시오 .

QByteArray QStringView::toLatin1() const

문자열을 Latin-1 형식으로 변환한 값을 ` QByteArray` 객체로 반환합니다.

문자열에 Latin-1이 아닌 문자가 포함된 경우 동작은 정의되지 않습니다.

toUtf8(), toLocal8Bit(), QStringEncoder도 참조하십시오 .

QByteArray QStringView::toLocal8Bit() const

문자열을 QByteArray 형식으로 변환한 로컬 8비트 표현을 반환합니다.

유닉스 시스템에서는 이 함수가 ` toUtf8()`와 동일하게 동작하며, 윈도우에서는 시스템의 현재 코드 페이지가 사용됩니다.

문자열에 로캘의 8비트 인코딩에서 지원하지 않는 문자가 포함된 경우, 동작은 정의되지 않습니다.

toLatin1(), toUtf8() 및 QStringEncoder도 참조하십시오 .

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

기본값이 10이며 2에서 36 사이의 값 또는 0이어야 하는 base base 를 사용하여 문자열 뷰를 long 로 변환한 결과를 반환합니다. 변환에 실패하면 0을 반환합니다.

ok 가 nullptr 와 다를 경우, *ok 를 false 로 설정하여 실패를 알리고, *ok 를 true 로 설정하여 성공을 알립니다.

base 가 0인 경우, C 언어 규칙이 적용됩니다. 즉, 문자열 뷰가 "0x"로 시작하면 16진수가 사용되고, 그렇지 않은 경우 문자열 뷰가 "0"으로 시작하면 8진수가 사용되며, 그 외의 경우에는 10진수가 사용됩니다.

문자열 변환은 항상 'C' 로케일에서 수행됩니다. 로케일에 따라 달라지는 변환을 원한다면 QLocale::toLong()을 사용하십시오.

이 함수는 Qt 6.0에서 도입되었습니다.

QString::toLong()도 참조하십시오 .

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

기본값이 10이며 2에서 36 사이의 값 또는 0이어야 하는 base base 를 사용하여 문자열 뷰를 long long 로 변환한 결과를 반환합니다. 변환에 실패하면 0을 반환합니다.

ok 가 nullptr 와 다를 경우, *ok 를 false 로 설정하여 실패를 알리고, *ok 를 true 로 설정하여 성공을 알립니다.

base 가 0인 경우, C 언어 규칙이 적용됩니다. 즉, 문자열 뷰가 "0x"로 시작하면 16진수를 사용하고, 그렇지 않은 경우 문자열 뷰가 "0"으로 시작하면 8진수를 사용하며, 그 외의 경우에는 10진수가 사용됩니다.

문자열 변환은 항상 'C' 로케일에서 수행됩니다. 로케일에 따라 달라지는 변환을 사용하려면 QLocale::toLongLong()을 사용하십시오.

이 함수는 Qt 6.0에서 도입되었습니다.

QString::toLongLong()도 참조하십시오 .

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

이 ` QStringView` 객체로부터 `NSString`을 생성합니다.

NSString은 자동 해제됩니다.

참고: 이 함수는 macOS 및 iOS에서만 사용할 수 있습니다.

이 함수는 Qt 6.0에서 도입되었습니다.

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

기본값이 10이며 2에서 36 사이의 값이어야 하는 base base 를 사용하여 문자열 뷰를 short 로 변환한 결과를 반환합니다. 변환이 실패하면 0을 반환합니다.

ok 가 nullptr 가 아닌 경우, *ok 를 false 로 설정하여 실패를 알리고, *ok 를 true 로 설정하여 성공을 알립니다.

base 가 0인 경우, C 언어 규칙이 적용됩니다. 즉, 문자열 뷰가 "0x"로 시작하면 16진수가 사용되고, 그렇지 않은 경우 문자열 뷰가 "0"으로 시작하면 8진수가 사용되며, 그 외의 경우에는 10진수가 사용됩니다.

문자열 변환은 항상 'C' 로케일에서 수행됩니다. 로케일에 따라 달라지는 변환을 원할 경우 QLocale::toShort()을 사용하십시오.

이 함수는 Qt 6.0에서 도입되었습니다.

QString::toShort()도 참조하십시오 .

QString QStringView::toString() const

이 문자열 뷰의 데이터에 대한 딥 카피를 ` QString` 형식으로 반환합니다.

이 문자열 뷰가 null인 경우에만 반환값은 null인 ` QString `이 됩니다.

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

기본값이 10이며 2에서 36 사이의 값 또는 0이어야 하는 base base 를 사용하여 문자열 뷰를 unsigned int 로 변환한 결과를 반환합니다. 변환에 실패하면 0을 반환합니다.

ok 가 nullptr 와 다를 경우, *ok 를 false 로 설정하여 실패를 알리고, *ok 를 true 로 설정하여 성공을 알립니다.

base 가 0인 경우, C 언어 규칙이 적용됩니다. 즉, 문자열 뷰가 "0x"로 시작하면 16진수를 사용하고, 그렇지 않은 경우 문자열 뷰가 "0"으로 시작하면 8진수를 사용하며, 그 외의 경우에는 10진수를 사용합니다.

문자열 변환은 항상 'C' 로케일에서 수행됩니다. 로케일에 따라 달라지는 변환을 원할 경우 QLocale::toUInt()을 사용하십시오.

이 함수는 Qt 6.0에서 도입되었습니다.

QString::toUInt()도 참조하십시오 .

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

기본값이 10이며 2에서 36 사이의 값 또는 0이어야 하는 base base 를 사용하여 문자열 뷰를 unsigned long 로 변환한 결과를 반환합니다. 변환에 실패하면 0을 반환합니다.

ok 가 nullptr 와 다를 경우, *ok 를 false 로 설정하여 실패를 알리고, *ok 를 true 로 설정하여 성공을 알립니다.

base 가 0인 경우, C 언어 규칙이 적용됩니다. 즉, 문자열 뷰가 "0x"로 시작하면 16진수를 사용하고, 그렇지 않은 경우 문자열 뷰가 "0"으로 시작하면 8진수를 사용하며, 그 외의 경우에는 10진수를 사용합니다.

문자열 변환은 항상 'C' 로케일에서 수행됩니다. 로케일에 따라 달라지는 변환을 원할 경우 QLocale::toULongLong()을 사용하십시오.

이 함수는 Qt 6.0에서 도입되었습니다.

QString::toULong()도 참조하십시오 .

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

기본값이 10이며 2에서 36 사이의 값 또는 0이어야 하는 base base 를 사용하여 문자열 뷰를 unsigned long long 로 변환한 결과를 반환합니다. 변환에 실패하면 0을 반환합니다.

ok 가 nullptr 와 다를 경우, *ok 를 false 로 설정하여 실패를 알리고, *ok 를 true 로 설정하여 성공을 알립니다.

base 가 0인 경우, C 언어 규칙이 적용됩니다. 즉, 문자열 뷰가 "0x"로 시작하면 16진수가 사용되고, 그렇지 않은 경우 문자열 뷰가 "0"으로 시작하면 8진수가 사용되며, 그 외의 경우에는 10진수가 사용됩니다.

문자열 변환은 항상 'C' 로케일에서 수행됩니다. 로케일에 따라 달라지는 변환을 원한다면 QLocale::toULongLong()을 사용하십시오.

이 함수는 Qt 6.0에서 도입되었습니다.

QString::toULongLong()도 참조하십시오 .

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

기본값이 10이며 2에서 36 사이의 값 또는 0이어야 하는 base base 을 사용하여 문자열 뷰를 unsigned short 로 변환한 결과를 반환합니다. 변환에 실패하면 0을 반환합니다.

ok 가 nullptr 와 다를 경우, *ok 를 false 로 설정하여 실패를 알리고, *ok 를 true 로 설정하여 성공을 알립니다.

base 가 0인 경우, C 언어 규칙이 적용됩니다. 즉, 문자열 뷰가 "0x"로 시작하면 16진수가 사용되고, 그렇지 않은 경우 문자열 뷰가 "0"으로 시작하면 8진수가 사용되며, 그 외의 경우에는 10진수가 사용됩니다.

문자열 변환은 항상 'C' 로케일에서 수행됩니다. 로케일에 따라 달라지는 변환을 원한다면 QLocale::toUShort()을 사용하십시오.

이 함수는 Qt 6.0에서 도입되었습니다.

QString::toUShort()도 참조하십시오 .

QList<uint> QStringView::toUcs4() const

문자열 뷰를 UCS-4/UTF-32 형식으로 변환하여 QList<uint> 값으로 반환합니다.

UCS-4는 유니코드 코덱이므로 무손실입니다. 이 문자열 뷰의 모든 문자는 UCS-4로 인코딩됩니다. 이 문자열 뷰에 포함된 유효하지 않은 코드 유닛 시퀀스는 유니코드 대체 문자(QChar::ReplacementCharacter, U+FFFD 에 해당)로 대체됩니다.

반환되는 리스트는 0으로 끝나지 않습니다.

toUtf8(), toLatin1(), toLocal8Bit(), QStringEncoder도 참조하십시오 .

QByteArray QStringView::toUtf8() const

문자열 뷰를 UTF-8 형식으로 변환한 결과값을 ` QByteArray` 객체로 반환합니다.

UTF-8은 유니코드 인코딩 방식이며, QString 과 같은 유니코드 문자열의 모든 문자를 표현할 수 있습니다.

toLatin1(), toLocal8Bit() 및 QStringEncoder도 참조하십시오 .

qsizetype QStringView::toWCharArray(wchar_t *array) const

이 문자열 뷰를 지정된 ` array`로 변환합니다.

호출자는 ` array `이 이 문자열 뷰의 ` wchar_t ` 인코딩을 담기에 충분한 크기를 갖도록 보장해야 합니다(문자열 뷰와 동일한 길이의 배열을 할당하는 것만으로도 항상 충분합니다). wchar_t 의 폭이 2바이트인 플랫폼(예: Windows)에서는 배열이 UTF-16으로 인코딩되며, 그렇지 않은 경우(Unix 시스템)에는 wchar_t 의 폭이 4바이트인 것으로 간주되어 데이터가 UCS-4로 기록됩니다.

참고: 이 함수는 ` array`의 끝에 널 종결자를 쓰지 않습니다.

array 에 기록된 wchar_t 항목의 개수를 반환합니다.

QString::toWCharArray()함수도 참조하십시오 .

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

sep 가 나타나는 모든 위치에서 문자열을 부분 문자열 뷰로 분할하고, 해당 문자열들의 지연 시퀀스를 반환합니다.

다음과 동일합니다.

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

와 동일하지만, 컴파일러에서 C++17 클래스 템플릿 인자 추론(CTAD)이 활성화되지 않은 상태에서도 작동한다는 점이 다릅니다.

결과를 구성하기 위해 ` sep `와 ` flags `가 어떻게 상호작용하는지에 대해서는 QStringTokenizer 를 참조하십시오.

참고: 이 함수는 QStringTokenizer 를반환하지만 , 절대로 템플릿 인자를 명시적으로 지정해서는 안 됩니다. C++17 클래스 템플릿 인자 추론(CTAD)을 사용할 수 있다면, 다음과 같이 작성할 수 있습니다.

QStringTokenizer result = sv.tokenize(sep);

(템플릿 인자 없이) 작성할 수 있습니다. C++17 CTAD를 사용할 수 없는 경우, 반환 값은 반드시 ` auto ` 변수에 저장해야 합니다:

auto result = sv.tokenize(sep);

이는 ` QStringTokenizer `의 템플릿 인자가 반환되는 특정 ` tokenize()` 오버로드에 대해 매우 미묘한 의존성을 가지며, 일반적으로 구분자에 사용되는 유형과 일치하지 않기 때문입니다.

이 함수들은 Qt 6.0에서 도입되었습니다.

참고: noexcept(qTokenize(std::declval<const QStringView&>(), std::forward<Needle>(needle), flags...)) 가 true()인 경우,이 함수는 noexcept입니다.

QStringTokenizer 및 qTokenize()도 참조하십시오 .

[noexcept] QStringView QStringView::trimmed() const

문장의 앞뒤에 있는 공백을 제거하고 그 결과를 반환합니다.

공백이란 ` QChar::isSpace()`가 ` true`를 반환하는 모든 문자를 의미합니다. 여기에는 ASCII 문자 '\t', '\n', '\v', '\f', '\r' 및 ' '가 포함됩니다.

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

이 문자열 뷰를 길이 length 로 잘라냅니다.

*this = left(length) 과 동일합니다.

참고: length < 0이거나 length > size()인 경우동작이 정의되지 않습니다.

sliced(), left(), right(), chopped() 및 chop()도 참조하십시오 .

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

문자열 뷰의 첫 번째 문자에 대한 const 포인터를 반환합니다.

참고: 반환값으로 표현되는 문자 배열은 null로 끝나지 않습니다.

storage_type char16_t 입니다.

참조: ` begin()`, ` end()`, ` data()`.

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

이 QStringView 객체를 std::u16string_view 객체로 변환합니다. 반환된 뷰는 이 뷰와 동일한 데이터 포인터와 길이를 갖게 됩니다.

이 함수는 Qt 6.7에서 도입되었습니다.

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

이 문자열 뷰에서 n 위치에 있는 문자를 반환합니다.

n 가 음수이거나 size()보다 크거나 같을 경우 동작이 정의되지 않습니다.

at(), front() 및 back()도 참조하십시오 .

관련 비회원

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

seed 를 계산의 시드로 사용하여, key 의 해시 값을 반환합니다.

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

lhs 와 rhs 를 비교하는 연산자.

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.