在Qt中,您可以使用QRegExp、QStringList或QString的一些內置方法來獲取字符串中的數值。
QString text = "Hello123World456";
QRegExp regex("\\d+"); // 匹配一個或多個數字
int pos = 0;
while ((pos = regex.indexIn(text, pos)) != -1) {
QString number = regex.cap(0); // 獲取匹配到的數字
// 處理數字
qDebug() << number;
pos += regex.matchedLength();
}
QString text = "Hello 123 World 456";
QStringList list = text.split(QRegExp("\\D+")); // 使用非數字字符分割字符串
foreach (const QString &number, list) {
if (!number.isEmpty()) {
// 處理數字
qDebug() << number;
}
}
QString text = "Hello 123 World 456";
QString number;
int pos = 0;
while (pos < text.length()) {
if (text[pos].isDigit()) { // 找到數字的起始位置
int startPos = pos;
while (pos < text.length() && text[pos].isDigit()) {
pos++;
}
number = text.mid(startPos, pos - startPos); // 截取數字
// 處理數字
qDebug() << number;
}
pos++;
}
請根據您的實際需求選擇適合您的方法。