【Qt】QString怎么判断是否含有某个字符串

2023年10月29日,周日晚上


QString怎么判断是否含有某一字符串?

比如我想知道QString中是否含有"connectToHost error"

要判断一个 QString 是否包含特定的子字符串,可以使用 QString 类的 contains() 方法。

下面是使用 contains() 方法来判断一个 QString 是否包含特定子字符串的示例:

cpp 复制代码
QString str = "connectToHost error";
QString subStr = "connectToHost error";

if (str.contains(subStr)) {
    // 包含指定的子字符串
    qDebug() << "String contains the substring";
} else {
    // 不包含指定的子字符串
    qDebug() << "String does not contain the substring";
}

需要注意的是,contains() 方法默认区分大小写,如果你想进行大小写不敏感的判断,可以使用重载的 contains() 方法,并传递一个 Qt::CaseInsensitive 参数:

cpp 复制代码
QString str = "ConnectToHost error";
QString subStr = "connecttohost error";

if (str.contains(subStr, Qt::CaseInsensitive)) {
    // 包含指定的子字符串(不区分大小写)
    qDebug() << "String contains the substring (case-insensitive)";
} else {
    // 不包含指定的子字符串
    qDebug() << "String does not contain the substring (case-insensitive)";
}

在这个示例中,使用重载的 contains() 方法,并传递了 Qt::CaseInsensitive 参数,以进行大小写不敏感的判断。这样,不论子字符串的大小写如何,都会被认为是包含在原字符串中。

相关推荐
比昨天多敲两行17 分钟前
C++ 多态
开发语言·c++
、BeYourself20 分钟前
Scala 字面量
开发语言·后端·scala
Amumu1213822 分钟前
JS:ES6~ES11基础语法(二)
开发语言·前端·javascript
Amumu1213824 分钟前
Js:ES6~ES11基础语法(一)
开发语言·前端·javascript
m0_5698814725 分钟前
跨语言调用C++接口
开发语言·c++·算法
zdl68626 分钟前
搭建Golang gRPC环境:protoc、protoc-gen-go 和 protoc-gen-go-grpc 工具安装教程
开发语言·后端·golang
LilySesy1 小时前
【与AI+】英语day1——ABAP基础与数据类型
开发语言·ai·sap·abap
你不是我我1 小时前
【Java 开发日记】我们来说一下 b+ 树与 b 树的区别
java·开发语言
2501_924952691 小时前
C++中的过滤器模式
开发语言·c++·算法