QStringRef Class
QStringRef クラスは、QString 部分文字列の薄いラッパーです。詳細...
Header: | #include <QStringRef> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core5Compat) target_link_libraries(mytarget PRIVATE Qt6::Core5Compat) |
qmake: | QT += core5compat |
- 継承メンバを含む全メンバのリスト
- QStringRefは、文字列データ用クラスの一部です。
注意:このクラスの関数はすべてリエントラントです。
パブリック型
パブリック関数
QStringRef() | |
QStringRef(const QString *string) | |
QStringRef(const QString *string, int position, int length) | |
QStringRef(const QStringRef &other) | |
~QStringRef() | |
QStringRef | appendTo(QString *string) const |
const QChar | at(int position) const |
QChar | back() const |
QStringRef::const_iterator | begin() const |
QStringRef::const_iterator | cbegin() const |
QStringRef::const_iterator | cend() const |
void | chop(int n) |
QStringRef | chopped(int len) const |
void | clear() |
int | compare(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | compare(QLatin1String other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | compare(const QByteArray &other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | compare(const QString &other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | compare(const QStringRef &other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
QStringRef::const_iterator | constBegin() const |
const QChar * | constData() const |
QStringRef::const_iterator | constEnd() const |
bool | contains(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | contains(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | contains(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | contains(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | contains(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | count() const |
int | count(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | count(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | count(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
QStringRef::const_reverse_iterator | crbegin() const |
QStringRef::const_reverse_iterator | crend() const |
const QChar * | data() const |
QStringRef::const_iterator | end() const |
bool | endsWith(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | endsWith(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | endsWith(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | endsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | endsWith(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
QChar | front() const |
int | indexOf(QLatin1String str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | indexOf(const QString &str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | indexOf(QChar ch, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | indexOf(QStringView str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | indexOf(const QStringRef &str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | isEmpty() const |
bool | isNull() const |
bool | isRightToLeft() const |
int | lastIndexOf(const QString &str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | lastIndexOf(QChar ch, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | lastIndexOf(QLatin1String str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | lastIndexOf(QStringView str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
int | lastIndexOf(const QStringRef &str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
QStringRef | left(int n) const |
int | length() const |
int | localeAwareCompare(const QString &other) const |
int | localeAwareCompare(const QStringRef &other) const |
QStringRef | mid(int position, int n = -1) const |
int | position() const |
QStringRef::const_reverse_iterator | rbegin() const |
QStringRef::const_reverse_iterator | rend() const |
QStringRef | right(int n) const |
int | size() const |
QList<QStringRef> | split(const QString &sep, Qt::SplitBehavior behavior = Qt::KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
QList<QStringRef> | split(QChar sep, Qt::SplitBehavior behavior = Qt::KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | startsWith(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | startsWith(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | startsWith(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | startsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
bool | startsWith(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
const QString * | string() const |
double | toDouble(bool *ok = nullptr) const |
float | toFloat(bool *ok = nullptr) const |
int | toInt(bool *ok = nullptr, int base = 10) const |
QByteArray | toLatin1() const |
QByteArray | toLocal8Bit() const |
long | toLong(bool *ok = nullptr, int base = 10) const |
qlonglong | toLongLong(bool *ok = nullptr, int base = 10) const |
short | toShort(bool *ok = nullptr, int base = 10) const |
QString | toString() const |
uint | toUInt(bool *ok = nullptr, int base = 10) const |
ulong | toULong(bool *ok = nullptr, int base = 10) const |
qulonglong | toULongLong(bool *ok = nullptr, int base = 10) const |
ushort | toUShort(bool *ok = nullptr, int base = 10) const |
QList<uint> | toUcs4() const |
QByteArray | toUtf8() const |
QStringRef | trimmed() const |
void | truncate(int position) |
const QChar * | unicode() const |
bool | operator!=(const char *s) const |
bool | operator<(const char *s) const |
bool | operator<=(const char *s) const |
QStringRef & | operator=(const QString *string) |
QStringRef & | operator=(const QStringRef &other) |
bool | operator==(const char *s) const |
bool | operator>(const char *s) const |
bool | operator>=(const char *s) const |
QChar | operator[](int position) const |
静的パブリック・メンバー
int | compare(const QStringRef &s1, const QString &s2, Qt::CaseSensitivity cs = Qt::CaseSensitive) |
int | compare(const QStringRef &s1, QLatin1String s2, Qt::CaseSensitivity cs = Qt::CaseSensitive) |
int | compare(const QStringRef &s1, const QStringRef &s2, Qt::CaseSensitivity cs = Qt::CaseSensitive) |
int | localeAwareCompare(const QStringRef &s1, const QString &s2) |
int | localeAwareCompare(const QStringRef &s1, const QStringRef &s2) |
関連する非メンバー
bool | operator<(const QStringRef &s1, const QStringRef &s2) |
bool | operator<=(const QStringRef &s1, const QStringRef &s2) |
bool | operator==(QLatin1String s1, const QStringRef &s2) |
bool | operator==(const QString &s1, const QStringRef &s2) |
bool | operator==(const QStringRef &s1, const QStringRef &s2) |
bool | operator>(const QStringRef &s1, const QStringRef &s2) |
bool | operator>=(const QStringRef &s1, const QStringRef &s2) |
詳細説明
QStringRef は、QString API の読み取り専用サブセットを提供します。
文字列参照は、特定のposition() から始まる、指定されたsize() を持つstring() の一部を明示的に参照します。toString() を呼び出すと、データのコピーが実際のQString インスタンスとして返される。
このクラスは、既存のQString インスタンスから取得した部分文字列を操作する際の、部分文字列処理のパフォーマンスを向上させるために設計されています。QStringRefは、単に元の文字列の一部を参照することで、標準のQString のメモリ割り当てと参照カウントのオーバーヘッドを回避します。これは、パーサーで使用されるような低レベルのコードでは、より複雑なコードになる可能性がありますが、有利であることがわかります。
ほとんどのユーザーにとって、QString の代わりに QStringRef を使用することに意味的な利点はありません。なぜなら QStringRef はメモリ管理の問題に注意を払う必要があり、コードの記述や保守がより複雑になる可能性があるからです。
警告 QStringRef は、参照される文字列が存在する限り有効です。元の文字列が削除された場合、文字列参照は無効なメモリ位置を指すことになります。
このクラスは、プロファイリングによって、標準的な文字列操作をこのクラスが提供する最適化された部分文字列処理に置き換えることでパフォーマンスが向上することが明らかになった安定したコードでのみ使用することをお勧めします。
暗黙的に共有されるクラスも参照ください 。
メンバ型のドキュメント
QStringRef::const_iterator
QStringRef::const_reverse_iterator も参照して ください。
QStringRef::const_reverse_iterator
QStringRef::const_iterator も参照して ください。
メンバ関数ドキュメント
[constexpr noexcept]
QStringRef::QStringRef()
空の文字列参照を構築する。
QStringRef::QStringRef(const QString *string)
与えられたstring への文字列参照を構築する。
QStringRef::QStringRef(const QString *string, int position, int length)
position length 指定されたstring に含まれる文字の範囲に対する文字列参照を構築します。
警告: この関数は、可能な限りパフォーマンスを向上させるために存在し、境界チェックを行いません。プログラムの正しさのために、position とlength はstring の有効な部分文字列を記述しなければならない。
position string length positionすなわち、0 <= position < string->length() と 0 <= length <= string->length() - position の両方を満たさなければならない。
[noexcept default]
QStringRef::QStringRef(const QStringRef &other)
other 文字列参照のコピーを構築する。
[noexcept default]
QStringRef::~QStringRef()
文字列参照を破棄します。
このクラスは文字列データを参照するためだけに使用され、その所有権は持たないので、インスタンスが破棄されてもメモリは解放されません。
QStringRef QStringRef::appendTo(QString *string) const
文字列参照をstring に追加し、結合された文字列データへの新しい参照を返します。
const QChar QStringRef::at(int position) const
文字列参照の指定されたインデックスposition にある文字を返します。
position は、文字列内の有効なインデックス位置でなければならない(すなわち、0 <=position <size())。
QChar QStringRef::back() const
文字列内の最後の文字を返す。at(size() - 1)
と同じ。
この関数は STL との互換性のために提供されています。
警告: 空の文字列に対してこの関数を呼び出すと、未定義の動作になります。
front()、at()、operator[]()も参照 。
QStringRef::const_iterator QStringRef::begin() const
文字列の最初の文字を指す constSTL 形式のイテレータを返します。
cbegin()、constBegin()、end()、constEnd()、rbegin()、rend() も参照 。
QStringRef::const_iterator QStringRef::cbegin() const
begin() と同じ。
begin()、constBegin()、cend()、constEnd()、rbegin()、rend()も 参照のこと。
QStringRef::const_iterator QStringRef::cend() const
end()と同じ。
end()、constEnd()、cbegin()、constBegin()、rbegin()、rend()も 参照のこと。
[noexcept]
void QStringRef::chop(int n)
n 文字を文字列の末尾から削除します。
n がsize() 以上の場合、結果は空文字列となる。n が負の場合、ゼロを渡すのと同じ。
QString::chop() およびtruncate()も参照 。
QStringRef QStringRef::chopped(int len) const
この文字列のsize() -len 左端の文字への部分文字列参照を返します。
注意: len が負の場合、またはsize() より大きい場合の動作は未定義。
endsWith()、left()、right()、mid()、chop()、truncate()も参照 。
void QStringRef::clear()
文字列参照を NULL および空にして、その内容を消去します。
[static noexcept]
int QStringRef::compare(const QStringRef &s1, const QString &s2, Qt::CaseSensitivity cs = Qt::CaseSensitive)
s1 とs2 を比較し、s1 がs2 より小さい場合は負の整数、s2 より大きい場合は正の整数、等しい場合は 0 を返す。
cs がQt::CaseSensitive の場合は大文字小文字を区別し、それ以外の場合は区別しない。
[noexcept]
int QStringRef::compare(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
これはオーバーロードされた関数である。
*this
とch を比較し、*this
がch より小さい場合は負の整数を、ch より大きい場合は正の整数を、等しい場合はゼロを返す。ここで、ch は長さ1の文字列と解釈される。
cs がQt::CaseSensitive の場合、比較は大文字小文字を区別する。
[noexcept]
int QStringRef::compare(QLatin1String other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
これはオーバーロードされた関数である。
*this
とother を比較し、*this
がother より小さい場合は負の整数を、other より大きい場合は正の整数を、等しい場合はゼロを返す。
cs がQt::CaseSensitive の場合、比較は大文字小文字を区別し、それ以外の場合、比較は大文字小文字を区別しない。
compare(*this, other, cs)
と同等である。
int QStringRef::compare(const QByteArray &other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
これはオーバーロードされた関数です。
*this
とother を比較し、*this
がother より小さい場合は負の整数を、other より大きい場合は正の整数を、等しい場合はゼロを返す。other の内容はUTF-8として解釈される。
cs がQt::CaseSensitive の場合、比較は大文字小文字を区別する。
compare(*this, other, cs)
と同等です。
[noexcept]
int QStringRef::compare(const QString &other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
これはオーバーロードされた関数です。
*this
とother を比較し、*this
がother より小さい場合は負の整数、other より大きい場合は正の整数、等しい場合は 0 を返す。
cs がQt::CaseSensitive の場合、比較は大文字小文字を区別し、それ以外の場合、比較は大文字小文字を区別しない。
compare(*this, other, cs)
と同等である。
[noexcept]
int QStringRef::compare(const QStringRef &other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
これはオーバーロードされた関数です。
*this
とother を比較し、*this
がother より小さい場合は負の整数を、other より大きい場合は正の整数を、等しい場合はゼロを返す。
cs がQt::CaseSensitive の場合、比較は大文字小文字を区別し、それ以外の場合、比較は大文字小文字を区別しない。
compare(*this, other, cs)
と同等である。
[static noexcept]
int QStringRef::compare(const QStringRef &s1, QLatin1String s2, Qt::CaseSensitivity cs = Qt::CaseSensitive)
これはオーバーロードされた関数です。
s1 とs2 を比較し、s1 がs2 より小さい場合は負の整数を、s2 より大きい場合は正の整数を、等しい場合はゼロを返す。
cs がQt::CaseSensitive の場合、比較は大文字小文字を区別する。
[static noexcept]
int QStringRef::compare(const QStringRef &s1, const QStringRef &s2, Qt::CaseSensitivity cs = Qt::CaseSensitive)
これはオーバーロードされた関数である。
s1 とs2 を比較し、s1 がs2 より小さい場合は負の整数を、s2 より大きい場合は正の整数を、それらが等しい場合はゼロを返す。
cs がQt::CaseSensitive の場合は大文字小文字を区別し、それ以外の場合は区別しない。
QStringRef::const_iterator QStringRef::constBegin() const
begin() と同じ。
begin()、cend()、constEnd()、rbegin()、rend()も参照のこと 。
const QChar *QStringRef::constData() const
unicode() と同じ。
QStringRef::const_iterator QStringRef::constEnd() const
end()と同じ。
end()、cend()、cbegin()、constBegin()、rbegin()、およびrend() も参照 。
bool QStringRef::contains(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この文字列参照に文字列str が含まれている場合はtrue
を返し、含まれていない場合はfalse
を返します。
cs がQt::CaseSensitive の場合(デフォルト)、検索では大文字と小文字が区別される。
bool QStringRef::contains(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は contains() をオーバーロードする。
この文字列にch という文字が含まれている場合はtrue
を返し、そうでない場合はfalse
を返します。
cs がQt::CaseSensitive の場合(デフォルト)、検索は大文字小文字を区別します。
bool QStringRef::contains(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は contains() をオーバーロードする。
この文字列参照が文字列str を含んでいる場合はtrue
を返し、そうでない場合はfalse
を返す。
cs がQt::CaseSensitive の場合(デフォルト)、検索は大文字小文字を区別します。
[noexcept]
bool QStringRef::contains(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は contains() をオーバーロードする。
この文字列参照が文字列ビューstr を含んでいる場合はtrue
を返し、そうでない場合はfalse
を返します。
cs がQt::CaseSensitive (デフォルト)の場合、検索は大文字小文字を区別します。
bool QStringRef::contains(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は contains() をオーバーロードする。
この文字列参照が文字列参照str を含んでいる場合はtrue
を返し、そうでない場合はfalse
を返します。
cs がQt::CaseSensitive の場合(デフォルト)、検索は大文字小文字を区別します。
int QStringRef::count() const
文字列参照が参照する文字数を返す。size() およびlength() と同じ。
int QStringRef::count(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この文字列参照に含まれる、文字列str の(重複している可能性のある)出現回数を返します。
cs がQt::CaseSensitive の場合 (デフォルト)、大文字小文字を区別します。
QString::count()、contains()、indexOf()も参照 。
int QStringRef::count(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は count() をオーバーロードする。
文字列参照内の文字ch の出現回数を返す。
cs がQt::CaseSensitive の場合(デフォルト)、大文字小文字を区別して検索される。
QString::count()、contains()、indexOf()も参照 。
int QStringRef::count(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は count() をオーバーロードしたものである。
この文字列参照内で、文字列参照str が(重複している可能性がある)出現する回数を返します。
cs がQt::CaseSensitive の場合(デフォルト)、検索は大文字小文字を区別する。
QString::count()、contains()、indexOf()も参照 。
QStringRef::const_reverse_iterator QStringRef::crbegin() const
rbegin() と同じ。
begin ()、rbegin ()、rend ()も 参照。
QStringRef::const_reverse_iterator QStringRef::crend() const
rend() と同じ。
end ()、rend ()、rbegin ()も 参照のこと。
const QChar *QStringRef::data() const
unicode() と同じ。
QStringRef::const_iterator QStringRef::end() const
リストの最後の文字の後の虚数文字を指す constSTL 形式のイテレータを返します。
cbegin(),constBegin(), end(),constEnd(),rbegin(),rend()も参照 。
bool QStringRef::endsWith(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
文字列参照がstr で終わっている場合はtrue
を返し、そうでない場合はfalse
を返す。
cs がQt::CaseSensitive の場合(デフォルト)、検索は大文字小文字を区別する。
QString::endsWith() およびstartsWith()も参照 。
bool QStringRef::endsWith(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は endsWith() をオーバーロードする。
文字列参照がch で終わっている場合はtrue
を返し、そうでない場合はfalse
を返します。
cs がQt::CaseSensitive の場合(デフォルト)、大文字小文字を区別して検索します。
QString::endsWith() およびendsWith()も参照してください 。
bool QStringRef::endsWith(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は endsWith() をオーバーロードします。
QString::endsWith() およびendsWith() も参照して ください。
[noexcept]
bool QStringRef::endsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は endsWith() をオーバーロードします。
QString::endsWith() およびstartsWith() も参照して ください。
bool QStringRef::endsWith(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は endsWith() をオーバーロードします。
QString::endsWith() およびendsWith() も参照して ください。
QChar QStringRef::front() const
文字列内の最初の文字を返します。at(0)
と同じ。
この関数は、STL との互換性のために用意されています。
警告: 空の文字列に対してこの関数を呼び出すと、未定義の動作になります。
back()、at()、およびoperator[]()も参照して ください。
int QStringRef::indexOf(QLatin1String str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この文字列参照で、文字列str が最初に出現するインデックスの位置を、インデックスの位置from から前方に検索して返します。str が見つからない場合は -1 を返す。
cs がQt::CaseSensitive の場合(デフォルト)、検索は大文字小文字を区別する。
from が -1 の場合、検索は最後の文字から開始され、-2 の場合は次の文字から開始される。
QString::indexOf()、lastIndexOf()、contains()、count()も参照 。
int QStringRef::indexOf(const QString &str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
from のインデックス位置から前方を検索して、この文字列参照で最初に出現する文字列str のインデックス位置を返します。str が見つからない場合は -1 を返す。
cs がQt::CaseSensitive の場合(デフォルト)、検索は大文字小文字を区別する。
from が -1 の場合、検索は最後の文字から開始され、-2 の場合は次の文字から開始される。
QString::indexOf()、lastIndexOf()、contains()、count()も参照のこと 。
int QStringRef::indexOf(QChar ch, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は indexOf() をオーバーロードしたものである。
インデックス位置from から前方を検索して、文字列参照内で最初に出現する文字ch のインデックス位置を返す。ch が見つからなかった場合は -1 を返す。
QString::indexOf()、lastIndexOf()、contains()、count()も参照 。
[noexcept]
int QStringRef::indexOf(QStringView str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は indexOf() をオーバーロードします。
インデックス位置from から前方を検索して、この文字列参照で最初に出現する文字列ビューstr のインデックス位置を返します。str が見つからない場合は -1 を返す。
cs がQt::CaseSensitive (デフォルト) の場合、検索は大文字小文字を区別します。
from が -1 の場合、検索は最後の文字から開始され、-2 の場合は次の文字から開始される。
QString::indexOf()、QStringView::indexOf()、lastIndexOf()、contains()、count()も参照のこと 。
int QStringRef::indexOf(const QStringRef &str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は indexOf() をオーバーロードしたものである。
インデックス位置from から前方を検索して、この文字列参照内で最初に出現する文字列参照str のインデックス位置を返します。str が見つからない場合は -1 を返す。
cs がQt::CaseSensitive (デフォルト) の場合、検索は大文字小文字を区別します。
QString::indexOf()、lastIndexOf()、contains()、count()も参照 。
bool QStringRef::isEmpty() const
文字列参照に文字がない場合はtrue
を返し、そうでない場合はfalse
を返す。
文字列参照のサイズが 0 の場合は空です。
size()も参照 。
bool QStringRef::isNull() const
この文字列参照が文字列を参照していない場合、または参照している文字列が NULL の場合 (QString::isNull() が true の場合)、true
を返します。
size() も参照の こと。
bool QStringRef::isRightToLeft() const
文字列が右から左に読み込まれた場合はtrue
を返す。
QString::isRightToLeft() も参照 。
int QStringRef::lastIndexOf(const QString &str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この文字列参照内で、文字列str が最後に出現したインデックスの位置を、インデックスの位置from から後方に検索して返します。from が -1 (デフォルト) の場合、検索は最後の文字から始まります。from が -2 の場合、最後から次の文字から始まります。str が見つからない場合は -1 を返す。
cs がQt::CaseSensitive の場合(デフォルト)、検索は大文字小文字を区別する。
QString::lastIndexOf()、indexOf()、contains()、count()も参照 。
int QStringRef::lastIndexOf(QChar ch, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は lastIndexOf() をオーバーロードします。
from の位置から後方検索して、最後に出現した文字ch のインデックス位置を返す。
QString::lastIndexOf()、indexOf()、contains()、count()も参照 。
int QStringRef::lastIndexOf(QLatin1String str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は lastIndexOf() をオーバーロードします。
インデックス位置from から後方に検索して、この文字列参照で最後に出現した文字列str のインデックス位置を返します。from が -1 (デフォルト) の場合、検索は最後の文字から始まります。from が -2 の場合、最後から次の文字から始まります。str が見つからない場合は -1 を返す。
cs がQt::CaseSensitive の場合(デフォルト)、検索は大文字小文字を区別する。
QString::lastIndexOf()、indexOf()、contains()、count()も参照 。
[noexcept]
int QStringRef::lastIndexOf(QStringView str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は lastIndexOf() をオーバーロードします。
インデックス位置from から後方へ検索して、この文字列内で最後に出現した文字列ビューstr のインデックス位置を返します。from が -1 (デフォルト) の場合、検索は最後の文字から始まります。from が -2 の場合、最後から次の文字から始まります。str が見つからない場合は -1 を返す。
cs がQt::CaseSensitive の場合(デフォルト)、検索は大文字小文字を区別する。
indexOf()、contains()、count()も参照 。
int QStringRef::lastIndexOf(const QStringRef &str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は lastIndexOf() をオーバーロードします。
インデックス位置from から後方に検索して、この文字列参照内で最後に出現した文字列参照str のインデックス位置を返します。from が -1 (デフォルト) の場合、検索は最後の文字から始まります。from が -2 の場合、最後から次の文字から始まります。str が見つからない場合は -1 を返す。
cs がQt::CaseSensitive の場合(デフォルト)、検索は大文字小文字を区別する。
QString::lastIndexOf()、indexOf()、contains()、count()も参照 。
QStringRef QStringRef::left(int n) const
文字列の左端の文字n への部分文字列参照を返します。
n がsize() 以上の場合、または 0 より小さい場合は、文字列全体への参照が返されます。
right()、mid()、startsWith()、chopped()、chop()、truncate()も参照 。
int QStringRef::length() const
文字列参照が参照する文字数を返します。size() およびcount() と同じ。
[static]
int QStringRef::localeAwareCompare(const QStringRef &s1, const QString &s2)
s1 とs2 を比較し、s1 がs2 より小さい場合は負の整数、s2 より大きい場合は正の整数、等しい場合は 0 を返す。
比較はロケールやプラットフォームに依存した方法で行われる。この関数は、ソートされた文字列のリストをユーザーに表示するために使用する。
compare()、QLocale 、およびComparing Stringsも参照のこと 。
int QStringRef::localeAwareCompare(const QString &other) const
これはオーバーロードされた関数である。
*this
とother を比較し、*this
がother より小さい場合は負の整数を、other より大きい場合は正の整数を、等しい場合はゼロを返す。
比較はロケールやプラットフォームに依存した方法で行われる。この関数は、ソートされた文字列のリストをユーザに提示するために使用する。
Comparing Stringsも参照のこと 。
int QStringRef::localeAwareCompare(const QStringRef &other) const
これはオーバーロードされた関数です。
*this
とother を比較し、*this
がother より小さい場合は負の整数、other より大きい場合は正の整数、等しい場合は 0 を返す。
比較はロケールやプラットフォームに依存した方法で行われる。この関数は、ソートされた文字列のリストをユーザに提示するために使用する。
Comparing Stringsも参照のこと 。
[static]
int QStringRef::localeAwareCompare(const QStringRef &s1, const QStringRef &s2)
これはオーバーロードされた関数です。
s1 とs2 を比較し、s1 がs2 より小さい場合は負の整数、s2 より大きい場合は正の整数、等しい場合は 0 を返す。
比較はロケールやプラットフォームに依存した方法で行われる。この関数は、ソートされた文字列のリストをユーザに提示するために使用する。
Comparing Stringsも参照のこと 。
QStringRef QStringRef::mid(int position, int n = -1) const
この文字列の、指定したposition から始まるn 文字への部分文字列参照を返します。
position が文字列の長さを超える場合は、NULL参照が返される。
指定されたposition から始まる文字列がn 未満の場合、またはn が -1 (デフォルト)の場合、この関数は、指定されたposition 以降のすべての文字を返します。
left()、right()、chopped()、chop()、truncate()も参照 。
int QStringRef::position() const
文字列参照によって参照される文字列の開始位置を返します。
QStringRef::const_reverse_iterator QStringRef::rbegin() const
文字列の最初の文字を指す constSTL 形式の逆順イテレータを返します。
QStringRef::const_reverse_iterator QStringRef::rend() const
文字列の最後の文字以降を指すSTL 形式の逆順イテレータを返します。
QStringRef QStringRef::right(int n) const
文字列のn 右端文字への部分文字列参照を返します。
n がsize() 以上の場合、または 0 より小さい場合は、文字列全体への参照が返されます。
left()、mid()、endsWith()、chopped()、chop()、truncate()も参照 。
int QStringRef::size() const
文字列参照が参照する文字数を返します。length() およびcount() と同じ。
QList<QStringRef> QStringRef::split(const QString &sep, Qt::SplitBehavior behavior = Qt::KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
sep が存在する箇所で文字列を部分文字列参照に分割し、それらの文字列のリストを返します。
sep 、behavior 、cs がどのように相互作用して結果を形成するかについては、QString::split() を参照のこと。
注意: すべての参照は、この文字列が生きている限り有効である。この文字列を破棄すると、すべての参照がぶら下がりポインタになります。
QList<QStringRef> QStringRef::split(QChar sep, Qt::SplitBehavior behavior = Qt::KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
これはオーバーロードされた関数である。
bool QStringRef::startsWith(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
文字列参照がstr で始まっていればtrue
を返し、そうでなければfalse
を返す。
cs がQt::CaseSensitive (デフォルト) の場合、検索は大文字小文字を区別する。
QString::startsWith() およびendsWith()も参照してください 。
bool QStringRef::startsWith(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は startsWith() をオーバーロードする。
文字列参照がch で始まる場合はtrue
を返し、そうでない場合はfalse
を返します。
cs がQt::CaseSensitive の場合(デフォルト)、検索は大文字小文字を区別する。
QString::startsWith() およびendsWith()も参照してください 。
bool QStringRef::startsWith(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は startsWith() をオーバーロードする。
QString::startsWith() およびendsWith() も参照して ください。
[noexcept]
bool QStringRef::startsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は startsWith() をオーバーロードします。
QString::startsWith() およびendsWith() も参照して ください。
bool QStringRef::startsWith(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
この関数は startsWith() をオーバーロードします。
QString::startsWith() およびendsWith()も参照 。
const QString *QStringRef::string() const
文字列参照が参照する文字列へのポインタを返すか、文字列を参照していない場合は 0 を返します。
unicode()も参照 。
double QStringRef::toDouble(bool *ok = nullptr) const
double
値に変換された文字列を返します。
変換がオーバーフローした場合は無限大を返し、その他の理由(アンダーフローなど)で 変換に失敗した場合は0.0を返す。
ok がnullptr
でない場合、失敗は *ok をfalse
に設定することで報告され、成功は *ok をtrue
に設定することで報告される。
文字列変換は常に'C'ロケールで行われる。ロケールに依存する変換には、QLocale::toDouble() を使用する。
歴史的な理由により、この関数は数千のグループ区切り文字を扱わない。そのような数値を変換する必要がある場合は、QLocale::toDouble() を使用する。
QString::toDouble()も参照 。
float QStringRef::toFloat(bool *ok = nullptr) const
float
値に変換された文字列を返します。
変換がオーバーフローした場合は無限大を、その他の理由(アンダーフローなど)で変換に失敗した場合は 0.0 を返します。
ok がnullptr
でない場合、失敗は *ok をfalse
に設定することで報告され、成功は *ok をtrue
に設定することで報告される。
文字列変換は常に'C'ロケールで行われる。ロケール依存の変換にはQLocale::toFloat() を使用する。
QString::toFloat()も参照 。
int QStringRef::toInt(bool *ok = nullptr, int base = 10) const
base を基数として、int
に変換された文字列を返します。 この基数は、デフォルトでは 10 であり、2 から 36 の間でなければなりません。
ok がnullptr
でない場合、失敗は *ok をfalse
に設定することで報告され、成功は *ok をtrue
に設定することで報告される。
base が0の場合、C言語の規約が使用される:文字列が "0x "で始まる場合、16進数が使用され、文字列が "0 "で始まる場合、 8進数が使用され、そうでない場合、10進数が使用される。
文字列の変換は常に'C'ロケールで行われる。ロケールに依存した変換を行うには、QLocale::toInt() を使用する。
QString::toInt()も参照 。
QByteArray QStringRef::toLatin1() const
文字列の Latin-1 表現をQByteArray として返す。
返されるバイト配列は、文字列に非ラテン文字が含まれている場合は未定義となる。これらの文字は抑制されるか、クエスチョンマークで置き換えられます。
toUtf8()、toLocal8Bit()、QStringEncoderも参照 。
QByteArray QStringRef::toLocal8Bit() const
文字列のローカルの8ビット表現をQByteArray 。 文字列がローカルの8ビット・エンコーディングでサポートされていない文字を含んでいる場合、返されるバイト配列は未定義である。
Unixシステムでは、これはtoUtf8() と等価である。Windowsでは、システムの現在のコードページが使用される。
この文字列にロケールでエンコードできない文字が含まれている場合、 返されるバイト配列は未定義となる。これらの文字は抑制するか、別の文字で置き換えることができる。
toLatin1()、toUtf8() およびQStringEncoderも参照 。
long QStringRef::toLong(bool *ok = nullptr, int base = 10) const
base を基数としてlong
に変換した文字列を返す。この基数はデフォルトでは 10 であり、2 から 36 の間でなければならない。
ok がnullptr
でない場合、失敗は *ok をfalse
に設定することで報告され、成功は *ok をtrue
に設定することで報告される。
base が0の場合、C言語の規約が使用される:文字列が "0x "で始まる場合、16進数が使用され、文字列が "0 "で始まる場合、 8進数が使用され、そうでない場合、10進数が使用される。
文字列の変換は常に'C'ロケールで行われる。ロケールに依存した変換を行うには、QLocale::toLong() を使用する。
QString::toLong()も参照 。
qlonglong QStringRef::toLongLong(bool *ok = nullptr, int base = 10) const
base を基数として、long long
に変換された文字列を返します。 この基数は、デフォルトでは 10 であり、2 から 36 の間でなければなりません。
ok がnullptr
でない場合、失敗は *ok をfalse
に設定することで報告され、成功は *ok をtrue
に設定することで報告される。
base が0の場合、C言語の規約が使用される:文字列が "0x "で始まる場合、16進数が使用され、文字列が "0 "で始まる場合、 8進数が使用され、そうでない場合、10進数が使用される。
文字列の変換は常に'C'ロケールで行われる。ロケールに依存した変換を行うには、QLocale::toLongLong() を使用する。
QString::toLongLong()も参照 。
short QStringRef::toShort(bool *ok = nullptr, int base = 10) const
base を基数として、short
に変換された文字列を返します。 この基数は、デフォルトでは 10 であり、2 から 36 の間でなければなりません。
ok がnullptr
でない場合、失敗は *ok をfalse
に設定することで報告され、成功は *ok をtrue
に設定することで報告される。
base が0の場合、C言語の規約が使用される:文字列が "0x "で始まる場合、16進数が使用され、文字列が "0 "で始まる場合、 8進数が使用され、そうでない場合、10進数が使用される。
文字列の変換は常に'C'ロケールで行われる。ロケールに依存した変換を行うには、QLocale::toShort() を使用する。
QString::toShort()も参照 。
QString QStringRef::toString() const
文字列参照のコピーをQString オブジェクトとして返します。
文字列参照が文字列の完全な参照ではない場合 (position() が 0 でsize() がstring()->size() と等しい場合)、 この関数は新しい文字列を割り当てて返します。
string()も参照 。
uint QStringRef::toUInt(bool *ok = nullptr, int base = 10) const
base を基数として、unsigned int
に変換された文字列を返します。 はデフォルトで 10 であり、2 から 36 の間でなければなりません。
ok がnullptr
でない場合、失敗は *ok をfalse
に設定することで報告され、成功は *ok をtrue
に設定することで報告される。
base が0の場合、C言語の規約が使用される:文字列が "0x "で始まる場合、16進数が使用され、文字列が "0 "で始まる場合、 8進数が使用され、そうでない場合、10進数が使用される。
文字列の変換は常に'C'ロケールで行われる。ロケールに依存した変換を行うには、QLocale::toUInt() を使用する。
QString::toUInt()も参照 。
ulong QStringRef::toULong(bool *ok = nullptr, int base = 10) const
base を基数としてunsigned long
に変換された文字列を返します。 はデフォルトで 10 であり、2 から 36 の間でなければなりません。
ok がnullptr
でない場合、失敗は *ok をfalse
に設定することで報告され、成功は *ok をtrue
に設定することで報告される。
base が0の場合、C言語の規約が使用される:文字列が "0x "で始まる場合、16進数が使用され、文字列が "0 "で始まる場合、 8進数が使用され、そうでない場合、10進数が使用される。
文字列の変換は常に'C'ロケールで行われる。ロケールに依存した変換を行うには、QLocale::toULongLong() を使用する。
QString::toULong()も参照 。
qulonglong QStringRef::toULongLong(bool *ok = nullptr, int base = 10) const
base を基数としてunsigned long long
に変換された文字列を返します。 はデフォルトで 10 であり、2 から 36 の間でなければなりません。
ok がnullptr
でない場合、失敗は *ok をfalse
に設定することで報告され、成功は *ok をtrue
に設定することで報告される。
base が0の場合、C言語の規約が使用される:文字列が "0x "で始まる場合、16進数が使用され、文字列が "0 "で始まる場合、 8進数が使用され、そうでない場合、10進数が使用される。
文字列の変換は常に'C'ロケールで行われる。ロケールに依存した変換を行うには、QLocale::toULongLong() を使用する。
QString::toULongLong()も参照 。
ushort QStringRef::toUShort(bool *ok = nullptr, int base = 10) const
base を基数としてunsigned short
に変換された文字列を返します。 はデフォルトで 10 であり、2 から 36 の間でなければなりません。
ok がnullptr
でない場合、失敗は *ok をfalse
に設定することで報告され、成功は *ok をtrue
に設定することで報告される。
base が0の場合、C言語の規約が使用される:文字列が "0x "で始まる場合、16進数が使用され、文字列が "0 "で始まる場合、 8進数が使用され、そうでない場合、10進数が使用される。
文字列の変換は常に'C'ロケールで行われる。ロケールに依存した変換を行うには、QLocale::toUShort() を使用する。
QString::toUShort()も参照 。
QList<uint> QStringRef::toUcs4() const
文字列の UCS-4/UTF-32 表現をQList<uint> として返します。
UCS-4はUnicodeコーデックなので、ロスレスです。この文字列のすべての文字はUCS-4でエンコードされます。この文字列内の無効なコード単位のシーケンスは、Unicode の置換文字 (U+FFFD
に対応するQChar::ReplacementCharacter) で置換されます。
返されたリストは終了しません。
toUtf8()、toLatin1()、toLocal8Bit()、およびQStringEncoderも参照してください 。
QByteArray QStringRef::toUtf8() const
文字列の UTF-8 表現をQByteArray として返します。
UTF-8はUnicodeコーデックであり、QString のようにUnicode文字列のすべての文字を表現することができます。
toLatin1()、toLocal8Bit()、QStringEncoderも参照してください 。
QStringRef QStringRef::trimmed() const
文字列の先頭と末尾から空白を取り除いた文字列を返します。
空白文字とは、QChar::isSpace() がtrue
を返すあらゆる文字を意味します。これには、ASCII 文字の ' \t'、'˶n'、'˶v'、'˶f'、'˶r'、および ' が含まれます。
QString::simplified() と異なり、trimmed() は内部の空白を残します。
QString::trimmed()も参照してください 。
[noexcept]
void QStringRef::truncate(int position)
指定されたposition インデックスで文字列を切り捨てます。
指定したposition インデックスが文字列の末尾を越えている場合は、何も起こりません。
position が負の場合は、ゼロを渡すのと同じである。
QString::truncate()も参照 。
const QChar *QStringRef::unicode() const
文字列参照の Unicode 表現を返します。データは参照された文字列から直接取得されるため、文字列参照に文字列の NULL 終端が含まれていない限り、'終端'されません。
string()も参照 。
bool QStringRef::operator!=(const char *s) const
この関数は operator!=() をオーバーロードします。
s const char ポインタは、fromUtf8() 関数を使用してQStringRef に変換される。
アプリケーションのコンパイル時にQT_NO_CAST_FROM_ASCII
を定義することで、この演算子を無効にすることができる。これは、たとえば、すべてのユーザー可視文字列がQObject::tr() を通過するようにしたい場合に便利です。
この文字列が字句解析的にパラメータ文字列s と等しくない場合はtrue
を返します。そうでない場合はfalse
を返します。
QT_NO_CAST_FROM_ASCIIも参照してください 。
bool QStringRef::operator<(const char *s) const
この関数は operator<() をオーバーロードする。
s const char ポインタは、fromUtf8() 関数を使用してQStringRef に変換されます。
アプリケーションのコンパイル時にQT_NO_CAST_FROM_ASCII
を定義することで、この演算子を無効にすることができます。これは、たとえば、すべてのユーザー可視文字列がQObject::tr() を通過するようにしたい場合に便利です。
この文字列がパラメータ文字列s より語彙的に小さい場合はtrue
を返します。そうでない場合はfalse
を返します。
QT_NO_CAST_FROM_ASCIIも参照してください 。
bool QStringRef::operator<=(const char *s) const
この関数は operator<=() をオーバーロードする。
s const char ポインタは、fromUtf8() 関数を使用してQStringRef に変換されます。
アプリケーションのコンパイル時にQT_NO_CAST_FROM_ASCII
を定義することで、この演算子を無効にすることができます。これは、たとえば、すべてのユーザー可視文字列がQObject::tr() を通過するようにしたい場合に便利である。
この文字列が字句解析的にパラメータ文字列s よりも小さいか等しい場合、true
を返します。そうでない場合はfalse
を返します。
QT_NO_CAST_FROM_ASCIIも参照してください 。
QStringRef &QStringRef::operator=(const QString *string)
与えられたstring への文字列参照を構築し、それをこの文字列参照に代入し、その結果を返します。
[noexcept default]
QStringRef &QStringRef::operator=(const QStringRef &other)
other 文字列参照をこの文字列参照に代入し、結果を返します。
bool QStringRef::operator==(const char *s) const
この関数は operator==() をオーバーロードします。
s バイト配列は、fromUtf8() 関数を使用してQStringRef に変換される。この関数は、最初に見つかったNUL文字、またはバイト配列の終端で変換を停止します。
アプリケーションのコンパイル時にQT_NO_CAST_FROM_ASCII
を定義することで、この演算子を無効にすることができます。これは、たとえば、すべてのユーザー可視文字列がQObject::tr() を通過するようにしたい場合に便利である。
この文字列が字句解析的にパラメータ文字列s と等しい場合はtrue
を返す。そうでない場合はfalse
を返します。
bool QStringRef::operator>(const char *s) const
この関数は operator>() をオーバーロードする。
s const charポインタは、fromUtf8()関数を使用してQStringRef に変換される。
アプリケーションのコンパイル時にQT_NO_CAST_FROM_ASCII
を定義することで、この演算子を無効にすることができます。これは、たとえば、すべてのユーザー可視文字列がQObject::tr() を通過するようにしたい場合に便利です。
この文字列が字句解析的にパラメータ文字列s より大きい場合はtrue
を返す。それ以外の場合はfalse
を返します。
QT_NO_CAST_FROM_ASCIIも参照してください 。
bool QStringRef::operator>=(const char *s) const
この関数は operator>=() をオーバーロードする。
s const char ポインタは、fromUtf8() 関数を使用してQStringRef に変換されます。
アプリケーションのコンパイル時にQT_NO_CAST_FROM_ASCII
を定義することで、この演算子を無効にすることができます。これは、たとえば、すべてのユーザー可視文字列がQObject::tr() を通過するようにしたい場合に便利です。
この文字列が字句解析的にパラメータ文字列s 以上であればtrue
を返す。そうでない場合はfalse
を返します。
QT_NO_CAST_FROM_ASCIIも参照してください 。
QChar QStringRef::operator[](int position) const
文字列参照の指定されたインデックスposition にある文字を返します。
position は、文字列参照の有効なインデックス位置でなければならない (すなわち、0 <=position <size())。
at()も参照 。
関連する非メンバー
[noexcept]
bool operator<(const QStringRef &s1, const QStringRef &s2)
文字列参照s1 が文字列参照s2 よりレキシカルに小さい場合はtrue
を返し、そうでない場合はfalse
を返す。
Comparing Stringsも参照のこと 。
[noexcept]
bool operator<=(const QStringRef &s1, const QStringRef &s2)
文字列参照s1 が文字列参照s2 より語彙的に小さいか等しい場合はtrue
を返し、そうでない場合はfalse
を返す。
Comparing Stringsも参照 。
[noexcept]
bool operator==(QLatin1String s1, const QStringRef &s2)
文字列参照s1 が文字列参照s2 と字句解析的に等しい場合はtrue
を返し、そうでない場合はfalse
を返します。
[noexcept]
bool operator==(const QString &s1, const QStringRef &s2)
文字列s1 が文字列参照s2 と字句解析的に等しい場合はtrue
を返し、そうでない場合はfalse
を返す。
[noexcept]
bool operator==(const QStringRef &s1, const QStringRef &s2)
文字列参照s1 が文字列参照s2 と字句解析的に等しい場合はtrue
を返し、そうでない場合はfalse
を返す。
[noexcept]
bool operator>(const QStringRef &s1, const QStringRef &s2)
文字列参照s1 が文字列参照s2 より語彙的に大きい場合はtrue
を返し、そうでない場合はfalse
を返します。
Comparing Stringsも参照してください 。
[noexcept]
bool operator>=(const QStringRef &s1, const QStringRef &s2)
文字列参照s1 が文字列参照s2 より語彙的に大きいか等しい場合はtrue
を返し、そうでない場合はfalse
を返す。
Comparing Stringsも参照して ください。
©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。