当前位置: 首页 > news >正文

QT C++ 判断字符串是否是一个数字

1、使用 QRegularExpression

带入正则表达式来匹配目标字符串是否符合数字结构,以此来判断,代码如下:

bool isPureNumber(const QString &arg1) {// 使用正则表达式来检查是否为纯数字 0-9QRegularExpression re("^\\d+$");// 匹配整数和小数,允许负号开头//QRegularExpression re("^-?\\d*\\.?\\d+$");return re.match(arg1).hasMatch();
}

2、使用 QString::toDouble() 或 QString::toInt()

函数带入一个bool类型的参数地址可以得到转换结果,以此来判断是否是数字。

bool isNumber(const QString &arg1) {bool ok;arg1.toDouble(&ok);  // 转换为 double 以检查有效性// arg1.toInt(&ok);  // 转换为 int 以检查有效性return ok;
}

3、使用 QString::contains() 和 QRegularExpression配合

使用了QRegularExpression类,同样关键在于正则表达式,也是以此来匹配,只不过这里使用contains函数来检测结构。

bool isPureNumber(const QString &arg1) {// 使用正则表达式匹配//return !arg1.isEmpty() && arg1.contains(QRegularExpression("^\\d+$"));  //0-9return !arg1.isEmpty() && arg1.contains(QRegularExpression("^-?\\d*\\.?\\d+$"));
}

4、结语

        以上就是本人一般会用到的判断一个字符串是否是数字的方法了,这里全部封装好了函数,可以根据实际情况做稍微修改来达到你自己的预期效果。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • ‌U盘闪一下就没了?‌如何有效恢复数据
  • 在手机在线预览3D模型,是如何实现的?
  • 【STM32】写Keil程序的注意事项
  • JSON数据格式介绍及如何在java中解析、转换、使用(fastjson工具类和hutools工具类使用教程)
  • 干部画像要包括什么
  • 大模型实战-FinGLM解析金融财报做RAG经验参考篇
  • 8月29日wpf
  • Spring Boot项目中集成Geth与以太坊区块链进行交互操作实例
  • 字典查找对应输入的字符
  • linux每个memory cgroup的lru链表是什么创建的
  • 11.舵机控制
  • 【Linux】CodeServer:云IDE部署
  • word并排查看,同步滚动
  • springboot定时任务@scheduled自定义配置定时开关
  • 软考高项彻底没用了?谁说的?站出来,我保证不笑场!
  • 【刷算法】从上往下打印二叉树
  • crontab执行失败的多种原因
  • Docker下部署自己的LNMP工作环境
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • PHP 小技巧
  • vue-router 实现分析
  • zookeeper系列(七)实战分布式命名服务
  • 给第三方使用接口的 URL 签名实现
  • 前嗅ForeSpider中数据浏览界面介绍
  • 正则学习笔记
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • 走向全栈之MongoDB的使用
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • #{}和${}的区别是什么 -- java面试
  • #git 撤消对文件的更改
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • $refs 、$nextTic、动态组件、name的使用
  • (26)4.7 字符函数和字符串函数
  • (9)目标检测_SSD的原理
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (echarts)echarts使用时重新加载数据之前的数据存留在图上的问题
  • (安全基本功)磁盘MBR,分区表,活动分区,引导扇区。。。详解与区别
  • (第8天)保姆级 PL/SQL Developer 安装与配置
  • (附源码)ssm基于微信小程序的疫苗管理系统 毕业设计 092354
  • (每日一问)设计模式:设计模式的原则与分类——如何提升代码质量?
  • (免费领源码)Python#MySQL图书馆管理系统071718-计算机毕业设计项目选题推荐
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (收藏)Git和Repo扫盲——如何取得Android源代码
  • (转)nsfocus-绿盟科技笔试题目
  • (转)VC++中ondraw在什么时候调用的
  • (转载)(官方)UE4--图像编程----着色器开发
  • .mat 文件的加载与创建 矩阵变图像? ∈ Matlab 使用笔记
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .NET MVC、 WebAPI、 WebService【ws】、NVVM、WCF、Remoting
  • .NET 反射的使用
  • .net 获取某一天 在当月是 第几周 函数
  • .NET 通过系统影子账户实现权限维持
  • .NET连接MongoDB数据库实例教程
  • .php文件都打不开,打不开php文件怎么办
  • @cacheable 是否缓存成功_让我们来学习学习SpringCache分布式缓存,为什么用?