88

必要なインデックスがわかっているときにQString、別のインデックスから取得したい。QString例:メイン文字列:「これは文字列です」QString最初の5つのシンボルから新しいものを作成し、 「This」を取得したいと思います。
入力:最初と最後の文字番号。
出力: new QString

それを作成する方法は?

PS最初の数文字だけでなく、行の中央から、たとえば5から8まで。

4

2 に答える 2

132

サブストリングを変更する必要がない場合は、を使用できますQStringRef。このクラスは、既存の文字列内の部分文字列を参照する、既存の文字列QStringRefの読み取り専用ラッパーです。これにより、サブ文字列を含むQString新しいオブジェクトを作成するよりもはるかに優れたパフォーマンスが得られます。QString例えば

QString myString("This is a string");
QStringRef subString(&myString, 5, 2); // subString contains "is"

部分文字列を変更する必要がある場合は、、、そしてleft()必要mid()right()ことを実行します...

QString myString("This is a string");
QString subString = myString.mid(5,2); // subString contains "is"
subString.append("n't"); // subString contains "isn't"
于 2011-09-28T15:46:47.560 に答える
57

left次の関数を使用します。

QString yourString = "This is a string";
QString leftSide = yourString.left(5);
qDebug() << leftSide; // output "This "

mid()さらに制御が必要かどうかも確認してください。

于 2011-09-28T14:24:02.737 に答える