QString是 Qt 框架中的一个核心类,基本用法使用:创建、字符串拼接、截取、查找、替换、分割、大小写转换、比较。

news/2025/2/25 0:39:01

QString 是 Qt 框架中的一个核心类,用于处理字符串数据。它提供了许多功能来处理文本操作,包括但不限于字符串拼接、分割、大小写转换等。下面是一些 QString 的常见用法示例:

创建 QString

你可以通过多种方式创建 QString 对象:

#include <QString>

// 使用字符串字面量初始化
QString str1 = "Hello, World!";

// 使用构造函数
QString str2("Hello, World!");

// 从 C++ 字符串(std::string)转换
#include <string>
std::string cppStr = "Hello, World!";
QString str3 = QString::fromStdString(cppStr);

// 从整数、浮点数等转换
int number = 42;
QString str4 = QString::number(number);

字符串拼接

QString greeting = "Hello";
QString name = "Alice";
QString result = greeting + ", " + name; // 使用加号拼接
// 或者使用 arg() 方法
result = QString("%1, %2").arg(greeting).arg(name);

字符串截取

QString text = "Hello, World!";
QString subText = text.mid(7, 5); // 截取从索引7开始的5个字符
// 结果为 "World"

字符串查找

QString text = "Hello, World!";
bool containsHello = text.contains("Hello"); // 查找子字符串
int index = text.indexOf("World"); // 查找指定子字符串的位置

字符串替换

QString text = "Hello, World!";
text.replace("World", "Qt"); // 将 "World" 替换为 "Qt"

字符串分割

QString text = "apple,banana,cherry";
QStringList fruits = text.split(","); // 以逗号分隔字符串

字符串大小写转换

QString text = "Hello, World!";
QString lowerCase = text.toLower(); // 转换为小写
QString upperCase = text.toUpper(); // 转换为大写

字符串修剪

QString text = "   Hello, World!   ";
QString trimmed = text.trimmed(); // 去除首尾空白字符

字符串比较

QString str1 = "Hello";
QString str2 = "hello";
bool isEqual = str1.compare(str2, Qt::CaseInsensitive) == 0; // 忽略大小写比较

这些只是 QString 类的一小部分功能。QString 提供了丰富的 API 来处理各种文本操作任务,可以满足大多数字符串处理需求。如果你需要更详细的信息,可以查阅 Qt 官方文档。


http://www.niftyadmin.cn/n/5864887.html

相关文章

微服务环境搭建架构介绍(附超清图解源代码)

微服务介绍 系统架构演变 随着互联网的发展&#xff0c;网站应用的规模也在不断的扩大&#xff0c;进而导致系统架构也在不断的进行变化。 从互联网早起到现在&#xff0c;系统架构大体经历了下面几个过程: 单体应用架构--->垂直应用架构--->分布 式架构--->SOA架构…

如何在VMware虚拟机的window10系统中安装网易mumu模拟器

安卓模拟器是可以在电脑的windows环境中运行手机软件的工具,喜欢网游或者是要逆向安卓应用应该都要安装这个模拟器,如果要模拟器正常工作,主机的虚拟化应该开启,也就是要开启vt。在有些情况下,需要把模拟器安装到电脑的虚拟机里,隔离模拟器与主机,这时vt的开启就稍麻烦些…

20250223学习记录

之前HDFview查看.hdf5文件的时候&#xff0c;看到土壤湿度数据是分为AM和PM&#xff0c;当时我有一个这样的疑问 但是后来用Python处理的时候&#xff0c;直接就是对整个的.hdf5文件处理&#xff0c;当时没有注意这一块&#xff0c;所以就没有这个疑问了。 今天突然看到一篇论…

进程概念、PCB及进程查看

文章目录 一.进程的概念进程控制块&#xff08;PCB&#xff09; 二.进程查看通过指令查看进程通过proc目录查看进程的cwd和exe获取进程pid和ppid通过fork()创建子进程 一.进程的概念 进程是一个运行起来的程序&#xff0c;而程序是存放在磁盘的&#xff0c;cpu要想执行程序的指…

#渗透测试#批量漏洞挖掘#Progress Software Flowmon命令执行漏洞(CVE-2024-2389)

免责声明 本教程仅为合法的教学目的而准备&#xff0c;严禁用于任何形式的违法犯罪活动及其他商业行为&#xff0c;在使用本教程前&#xff0c;您应确保该行为符合当地的法律法规&#xff0c;继续阅读即表示您需自行承担所有操作的后果&#xff0c;如有异议&#xff0c;请立即停…

二:前端发送POST请求,后端获取数据

接着一&#xff1a;可以通过端口访问公网IP之后 二需要实现&#xff1a;点击飞书多维表格中的按钮&#xff0c;向服务器发送HTTP请求&#xff0c;并执行脚本程序 向服务器发送HTTP请求&#xff1a; 发送请求需要明确一下几个点 请求方法&#xff1a; 由于是向服务器端发送值…

即插即用Transformer、扩散模型、机器人规划、长文本检索增强生成 | Big Model Weekly 第57期...

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入&#xff01; 01 ProTransformer: Robustify Transformers via Plug-and-Play Paradigm 近年来&#xff0c;基于Transformer的架构在机器学习的各个领域占据了主导地位。本文介绍了一种新颖的鲁棒性注意力机制&#xff0c;旨…

【论文阅读】SAM-CP:将SAM与组合提示结合起来的多功能分割

导言 近年来&#xff0c;视觉基础模型的快速发展推动了多模态理解的进步&#xff0c;尤其是在图像分割任务中。例如&#xff0c;Segment Anything模型&#xff08;SAM&#xff09;在图像Mask分割上表现出色&#xff0c;但在语义及实例分割方面仍存在局限。本文提出的SAM-CP&am…