Linux 拨号vps windows公众号手机端

qt怎么获取字符串中的数值

lewis 8年前 (2017-03-30) 阅读数 9 #程序编程
文章标签 qt

在Qt中,您可以使用QRegExp、QStringList或QString的一些内置方法来获取字符串中的数值。

  1. 使用QRegExp:
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();
}
  1. 使用QStringList:
QString text = "Hello 123 World 456";
QStringList list = text.split(QRegExp("\\D+"));  // 使用非数字字符分割字符串
foreach (const QString &number, list) {
    if (!number.isEmpty()) {
        // 处理数字
        qDebug() << number;
    }
}
  1. 使用QString的toInt()或toDouble()方法:
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++;
}

请根据您的实际需求选择适合您的方法。

版权声明

本文仅代表作者观点,不代表米安网络立场。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门