Qt的几个函数方法
void receiveInfo1() {// 假设这是从串口接收到的字符串QString receivedString = "23.5°C,45%,1012hPa";// 使用逗号分隔符分割字符串QStringList parts = receivedString.split(',');// 检查分割后的列表是否有足够的部分if (parts.size() >= 3) {QString part1 = parts.at(0).trimmed(); // 获取第一个部分,并去除空白字符QString part2 = parts.at(1).trimmed(); // 获取第二个部分,并去除空白字符QString part3 = parts.at(2).trimmed(); // 获取第三个部分,并去除空白字符// 现在part1, part2, part3分别包含了三个部分的字符串// 你可以在这里进一步处理这些字符串}
}
在Qt中,QString
类提供了多种方法来处理字符串,包括查找子字符串的位置、检查字符串是否包含某个子字符串,以及截取字符串的一部分。下面是indexOf()
、lastIndexOf()
、contains()
方法的示例,以及如何使用left()
和mid()
方法来截取字符串。
indexOf()
indexOf()
方法返回子字符串在字符串中首次出现的位置。如果没有找到子字符串,它返回 -1
。
QString str = "Hello, World!";
int index = str.indexOf("World"); // index 将会是 7
lastIndexOf()
lastIndexOf()
方法返回子字符串在字符串中最后一次出现的位置。如果没有找到子字符串,它返回 -1
。
QString str = "The quick brown fox jumps over the lazy dog";
int lastIndex = str.lastIndexOf("the"); // lastIndex 将会是 36
contains()
contains()
方法检查字符串是否包含特定的子字符串,如果包含则返回 true
,否则返回 false
。
QString str = "Hello, World!";
bool containsWorld = str.contains("World"); // containsWorld 将会是 true
left()
left()
方法返回字符串开头的指定数量的字符。
QString str = "Hello, World!";
QString leftPart = str.left(5); // leftPart 将会是 "Hello"
mid()
mid()
方法返回从指定位置开始的指定数量的字符。
QString str = "Hello, World!";
QString midPart = str.mid(7, 5); // midPart 将会是 "World"