Qt中indexOf()的用法
时间: 2024-01-17 13:37:37 浏览: 162
在Qt中,`QString`类提供了`indexOf()`方法用于查找子字符串在目标字符串中的位置。它有几种不同的重载形式,用于不同的查找方式和参数。
下面是`indexOf()`方法的常见用法示例:
1. 查找子字符串第一次出现的位置:
```cpp
QString str = "Hello World";
int index = str.indexOf("World");
// index = 6
```
2. 从指定索引开始查找子字符串第一次出现的位置:
```cpp
QString str = "Hello World";
int index = str.indexOf("o", 5);
// index = 7
```
3. 从指定索引开始逆向查找子字符串第一次出现的位置:
```cpp
QString str = "Hello World";
int index = str.lastIndexOf("o", 7);
// index = 4
```
4. 查找多个子字符串中的任意一个第一次出现的位置:
```cpp
QString str = "Hello World";
QStringList words = {"Hello", "World"};
int index = str.indexOf(words);
// index = 0 (找到"Hello"在0位置)
```
5. 查找多个子字符串中的任意一个第一次出现的位置,并返回匹配到的子字符串:
```cpp
QString str = "Hello World";
QStringList words = {"Hello", "World"};
int index;
QString match = str.mid(index, str.indexOf(words, &index) - index);
// match = "Hello" (匹配到"Hello")
```
这些示例演示了`indexOf()`方法的一些常见用法。您可以根据您的具体需求选择适合的重载形式。
阅读全文