QString 字符查找
时间: 2023-07-18 22:37:11 浏览: 119
在 Qt 中,可以使用 QString 类的 indexOf() 函数来进行字符查找。其函数原型如下:
```cpp
int indexOf(QChar ch, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const;
```
其中,ch 表示要查找的字符,from 表示查找的起始位置,默认值为 0,cs 表示查找时是否区分大小写,默认值为 Qt::CaseSensitive。
例如,查找字符串 "hello world" 中第一个字母为 "w" 的位置,可以使用下面的代码:
```cpp
QString str = "hello world";
int index = str.indexOf("w");
```
执行后,index 的值将为 6,表示 "w" 在字符串 "hello world" 中的位置为 6。
如果要查找最后一个字母为某个字符的位置,可以使用 lastIndexOf() 函数,其函数原型与 indexOf() 函数类似。
相关问题
QString 字符查找”\“
在 C++ 中,反斜杠 "\" 是一个特殊字符,表示转义字符。如果要查找一个字符串中包含反斜杠字符,需要使用两个反斜杠 "\\" 来表示一个反斜杠字符。
例如,查找字符串 "C:\Program Files" 中反斜杠 "\" 的位置,可以使用下面的代码:
```cpp
QString str = "C:\\Program Files";
int index = str.indexOf("\\");
```
执行后,index 的值将为 1,表示第一个反斜杠字符在字符串中的位置为 1。
如果要查找最后一个反斜杠字符的位置,可以使用 lastIndexOf() 函数,其函数原型与 indexOf() 函数类似。
在QString字符串中查找所有的一个字符
可以使用QString的count函数来查找一个字符在字符串中出现的次数,示例代码如下:
QString str = "Hello World";
QChar ch = 'l';
int count = str.count(ch); // count = 3
如果需要查找所有出现的位置,可以使用QString的indexOf函数,示例代码如下:
QString str = "Hello World";
QChar ch = 'l';
int pos = 0;
while ((pos = str.indexOf(ch, pos)) != -1) {
qDebug() << "Found at position" << pos;
pos++;
}
这段代码会输出所有字符'l'在字符串中出现的位置。
阅读全文