QT 正则表达式 QRegExp 使用

2023-11-11

直接贴代码:

    QRegExp rx("(startxref)(\\s+)(\\d+)");
    rx.setMinimal(false);

    int pos = 0;
    while ((pos = rx.indexIn(trl , pos)) != -1)
    {
        pos += rx.matchedLength();
        qDebug() << "pos :" << pos;
        qDebug() << rx.cap(0);
        qDebug() << rx.cap(1);
        qDebug() << rx.cap(2);
        qDebug() << rx.cap(3);
    }

QRegExp rx("(startxref)(\\s+)(\\d+)");

第一行创建一个正则对象,注意因为用字符串, \s 中的 '\' 要转义一下,否则存入临时的字符串为 s;

rx.setMinimal(false);

这句设置贪婪算法,默认是 minimal,只要匹配到,就匹配结束。设为 false,则匹配到最大最多值。

比如(\\d+),+号表示{1,∞ };默认匹配到一个数字,就完成匹配了。设置 minimal 为 false,能最大限度的匹配到符合的数字。

rx.indexIn(trl , pos);

也可以用 trl.indexOf(rx) 代替。返回值为匹配的起始位置。

rx.matchedLength();

返回匹配到的字符串长度。

rx.cap(0);

返回匹配到的字符串。cap()参数缺省值为0;

cap(0):表示匹配的整个文本的值。

cap(1):表示第1个圆括弧中的值,即(startxref);

cap(2):表示第2个圆括弧中的值,即(\\s+);

cap(3):表示第3个圆括弧中的值,即(\\d+);

以此类推。




本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QT 正则表达式 QRegExp 使用 的相关文章

  • 安装多个版本的 Qt 库

    我在windows中安装了QtSDK 它的Qt库版本是4 7 0 现在我想为 mingw 和 VS2008 安装 Qt 库版本 4 8 2 我怎样才能做到这一点 如何向QtCreator引入多个版本 注意 我已经从以下位置下载了库http
  • 如何将图标放置到 QLineEdit 上?

    stackoverflow com 网站的右上角有一个带有放大镜头的搜索字段和一个灰色的 搜索 关键字 我想知道是否有可能实现相同的外观QLineEdit 如果是这样那怎么办 QLineEdit lineEdit new QLineEdit
  • qt项目如何设置安装路径

    我正在寻找与 qmake configure prefix 等效的内容 基本上 我想覆盖默认的安装 部署目录 这是如何用命令行 qmake 指定的 我还使用 QtCreator 构建了很多 gui 项目 并且我想知道如何在 QtCreato
  • 为什么下面的重叠比较总是评估为 true

    我不明白为什么以下代码有警告 指出重叠比较始终评估为真 接下来的语句永远不会被执行 QVariant MainModel data const QModelIndex index int role const if index isVali
  • QGraphicsView 和 eventFilter

    这个问题已经困扰我两天多了 所以我想我应该问一下 我在Win7上使用Qt 4 5 3 用VC2008编译 我有 MyGraphicsView 继承 QGraphicsView 和 MyFilter 继承 QObject 类 当我将 MyFi
  • Qt Creator:如何区分 win32 和 win64

    我必须在 pro 文件中执行类似的操作 win32 LIBS L 3rdparty libusb win32 lib msvc llibusb else win64 LIBS L 3rdparty libusb win32 lib msvc
  • QT/QML Android App,点击通知栏时打开应用程序

    我为 Android 应用程序制作了一个 QT 当我单击平板电脑中上面看到的按钮通知栏时 但是 如果单击通知 我的应用程序将打开 聚焦 不知道 并显示黑色窗口 简单来说怎么做呢 我的代码是 package org ays operation
  • Qt中如何获取鼠标在屏幕上的位置?

    我想获取屏幕上的鼠标坐标 我怎样才能在 Qt 中做到这一点 在 Windows 上 使用 C 我正在做类似答案中建议的事情对于这个问题 https stackoverflow com q 11737665 1420197 正如文档所述 QC
  • QTextEdit.find() 在 Python 中不起作用

    演示问题的简单代码 usr bin env python import sys from PyQt4 QtCore import QObject SIGNAL from PyQt4 QtGui import QApplication QTe
  • 如何在模型更改时停止ListView“跳跃”

    我需要做什么 我需要创建一个聊天窗口用一个ListView在 QML 中存储聊天消息 我设置listView positionViewAtEnd 以便跟踪最后的消息 我禁用positionViewAtEnd当我向上滚动时 我可以阅读过去的消
  • QGraphicsScene::clear 不会改变 sceneRect

    我有一个 QGraphicsScene 场景 和 QGraphicsView graphicsView 我有一个画图的方法 当我需要重绘所有图形时 我调用这个方法 一切都好 但我意识到 scene gt clear 不会改变 sceneRe
  • 在 Qt5 中,是否需要 Q_INVOKABLE 来从 QML 调用公共 QObject 函数?

    我刚刚意识到我可以调用暴露于 QML 的对象的几乎任何函数 现在我对 Q INVOKABLE 很好奇 Qt5docs http doc qt io qt 5 qtqml cppintegration exposecppattributes
  • 使用 Visual Studio 2013 构建 Qt 5.2.1 的静态版本

    几天来我一直在尝试使用 Visual Studio 2013 构建 Qt 的静态版本 我就是不明白我做错了什么 System Windows 7 64 位 Visual Studio 2013 仍安装 Visual Studio 2012
  • 更改 Qt OpenGL 窗口示例以使用 OpenGL 3.3

    我正在尝试更改 Qt OpenGL 示例以使用更现代的 opengl 版本 330 似乎合适 所以我做了 在 main cpp 上设置版本和配置文件 设置着色器版本 更改着色器以使用统一 它现在构建没有任何错误 但我只看到一个空白窗口 我错
  • 使用 QtWebEngine 将 C++ 对象暴露给 Qt 中的 Javascript

    使用 QtWebkit 可以通过以下方式将 C 对象公开给 JavascriptQWebFrame addToJavaScriptWindowObject如中所述https stackoverflow com a 20685002 5959
  • PyQt5:如何使QThread返回数据到主线程

    I am a PyQt 5 4 1 1初学者 我的Python是3 4 3 这是我尝试遵循的many https mayaposch wordpress com 2011 11 01 how to really truly use qthr
  • Qml 模块未找到 CPP 类注册与新的 QML_ELEMENT r

    我尝试使用 Qt5 15 0 和新宏 QML ELEMENT 在 QML 中注册我的自定义 CPP 类 但找不到该模块 Qt Creater 帮助文件描述了 QML ELEMENT 的步骤 我也检查了 Qt 手册 但没有幸福的结局 http
  • Qt-Qlist 检查包含自定义类

    有没有办法覆盖加载自定义类的 Qt QList 的比较机制 即在 java 中你只需要重写一个比较方法 我有一个带有我的自定义类模型的 QList QList
  • 在高 dpi Windows 平台上自动重新缩放应用程序?

    我正在编写一个需要在高 dpi Windows 192dpi 而不是 96dpi 上运行的 Qt 应用程序 不幸的是 Qt 框架尚不支持高 dpi 至少在 Windows 上 因此我的应用程序及其所有元素看起来只有应有尺寸的一半 有没有办法
  • Qt表格小部件,删除行的按钮

    我有一个 QTableWidget 对于所有行 我将一列的 setCellWidget 设置为按钮 我想将此按钮连接到删除该行的函数 我尝试了这段代码 它不起作用 因为如果我只是单击按钮 我不会将当前行设置为按钮的行 ui gt table

随机推荐

  • python __doc__方法

    doc 方法是python的内置方法之一 该方法通常会输出指定对象中的注释部分 NB 注意 后面的部分表示输出结果 代码如下 class Debug This is a class for debugging def init self T
  • ESP32-C3入门教程 基础篇(一、ADC采样)

    经过前面的折腾 设计好了自己的测试开发板 搭建好了开发环境 然后正式开始进行功能测试了 测试顺序先从简单的开始吧 一步一步来 目录 前言 1 ADC采样示例测试 1 1 DMA连续采样 1 2 单次采样 1 3 测试源码 2 ESP32 C
  • linux之perf(2)list事件

    Linux之perf 2 list事件 Author Onceday Date 2023年9月3日 漫漫长路 才刚刚开始 参考文档 Tutorial Perf Wiki kernel org perf list 1 Linux manual
  • DevOps理念:开发与运维的融合

    在现代软件开发领域 DevOps 不仅仅是一个流行的词汇 更是一种文化 一种哲学和一种方法论 DevOps 的核心理念是通过开发和运维之间的紧密合作 实现快速交付 高质量和持续创新 本文将深入探讨 DevOps 文化的重要性 原则以及如何在
  • C语言 - 整形在内存中的存储方式

    一 以补码的形式存储在内存当中 1 有符号型的整数二进制首位0表示正 1表示负数 2 正数的原码 反码 补码都相同 如 3 负数的反码为原码的首位数不变 其他位按位取反所得 补码为反码 1 如 当然 要得到负数的原码 可以反过来 即补码 1
  • 基于SpringCloud的Microservices架构实战案例-在线API管理

    simplemall项目前几篇回顾 1基于SpringCloud的Microservices架构实战案例 序篇 2基于SpringCloud的Microservices架构实战案例 架构拆解 3基于SpringCloud的Microserv
  • C语言读取load格式文件,求指导,如何用c语言实现读取*.raw格式图像

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 这个程序是读取jpg图像的 后续加上jpg图像打开和存放 include include include include include define SOI 0xD8 文件头 define E
  • 【Redis篇】Redis缓存之双写一致性

    1 引言 redis做为缓存 mysql的数据如何与redis进行同步呢 本质上问的就是双写一致性 注意 回答这个问题前一定要结合自己的业务背景 分两种情况 一个是你的业务一致性要求高 另一个是你的业务允许延迟一致 2 双写一致性 2 1
  • 大数据技术之数据质量管理

    一 数据质量概述 1 数据质量简介 数据质量的高低代表了该数据满足数据消费者期望的程度 这种程度基于他们对数据的使用预期 只有达到数据的使用预期才能给予管理层正确的决策参考 数据质量管理作为数据仓库的一个重要模块 主要可以分为数据的健康标准
  • 前端实现导出excel表格(单行表头)

    需求 实现勾选行导出为表格 一 安装插件 npm install save file saver xlsx 运行项目报如下警告的话 运行npm install xlsx 0 16 0 save 来降低版本号 最初我安装的版本号是0 18 1
  • android天气预报开题报告,开题报告-基于Android手机移动天气预报系统.doc

    毕业设计 论文 开题报告 题目 基于Android手机移动天气预报系统 一 选题依据 目的和意义 天气预报就是对未来时期内天气变化的预先估计和报告 它是根据大气科学的基本理论和技术对每一地区的未来天气做出分析和预测 这是大气科学为国民经济建
  • 比尔盖茨现身西雅图SAS 2007“治疗失眠”

    结束了4月18 21号的访华活动 比尔盖茨又现身在了西雅图5月8号开始的为时两天的第八届微软战略合作伙伴高峰会议上 Strategic Account Summit Conference 这次会议请来了众多重量级的大腕嘉宾 包括负责微软网络
  • Springboot 接口方式硬通知实现ConfigurationProperties 、@Value 动态刷新

    前言 看到这个文章标题 也许有的看官就觉得很多余 因为Nacos 可以设置 NacosValue value XXX autoRefreshed true 实现动态刷新 又因为cloud config的 RefreshScope 实现动态刷
  • 基于Warshall算法的连通图及欧拉图判定方法

    1736年欧拉解决了哥尼斯堡七桥问题 他在这一具体问题的基础上进一步研究 最终找到了一个简便的原则可以鉴别一个图 多重图 能否一笔画成 本文中 笔者使用布尔矩阵来存储一个无向图 并结合集合论中 传递闭包 的概念给出了一种欧拉图的判定方法 本
  • (系统的推送)友盟推送

    今年再次负责这个模块 最大亮点就是支持了系统的推送 也就是说你设备退出后台应用了 发推送还可以收到推送 https info umeng com detail id 169 cateId 1 测试方案 选择测试模式 可以无限制的发送数量 公
  • Pytorch深度学习入门与实战三——循环神经网络

    1 常见的循环神经网络 RNN LSTM GRU RNN torch nn RNN 单纯的RNN会出现随着地柜次数的增加 权重指数级爆炸或小时的问题 从而难以捕捉长时间的关联 导致RNN训练是收敛困难 LSTM 引入门的机制 使网络有更强的
  • 草料二维码统计扫描信息

    目录 1 注册账号并登陆 2 创建活码 2 1 点击活码后编辑 2 1 1 新建 gt 空白建码 也可以选择模板 3 查看统计信息 3 1 扫描创建的活码 3 2 数据分析 gt 扫描量统计 需求说明 由于服务推广需要统计扫码人数 所以使用
  • 相似图像的检测方法

    背景 以图搜图 是日常生活中我们经常会用到 例如在选购一款商品时 想要对比价格 往往会在各个购物app上通过搜图的形式来看同一款产品的价格 当你碰到某种不认识的植物时 也可以通过以图搜图的方式来获取该种植物的名称 而这些功能大都是通过计算图
  • Hook 学习系列(一) —— State Hook

    React Hook State Hook 使用多个 state 变量 以 use 开头的函数被称为 Hook React Hook 是 React 16 8 引入的新特性 它用在函数组件中 允许开发者不使用 class 的情况下 使用状态
  • QT 正则表达式 QRegExp 使用

    直接贴代码 QRegExp rx startxref s d rx setMinimal false int pos 0 while pos rx indexIn trl pos 1 pos rx matchedLength qDebug