qstring 的indexof函数
时间: 2023-12-28 20:05:12 浏览: 193
QString类是Qt框架中提供的一个字符串类,其indexOf()函数用于查找一个子字符串在当前字符串中第一次出现的位置。该函数有以下几种重载形式:
1. int indexOf(const QString &str, int from = 0) const
此形式用于查找一个子字符串str在当前字符串中第一次出现的位置,并返回其索引值。如果当前字符串中不存在该子字符串,则返回-1。from参数表示查找的起始位置,默认值为0,表示从字符串开头开始查找。
例如:
```
QString str = "Hello World";
int index = str.indexOf("World");
// index的值为6
```
2. int indexOf(QChar ch, int from = 0) const
此形式用于查找一个字符ch在当前字符串中第一次出现的位置,并返回其索引值。如果当前字符串中不存在该字符,则返回-1。from参数表示查找的起始位置,默认值为0,表示从字符串开头开始查找。
例如:
```
QString str = "Hello World";
int index = str.indexOf('W');
// index的值为6
```
3. int indexOf(QRegExp rx, int from = 0) const
此形式用于查找一个正则表达式rx在当前字符串中第一次匹配的位置,并返回其索引值。如果当前字符串中不存在匹配的子字符串,则返回-1。from参数表示查找的起始位置,默认值为0,表示从字符串开头开始查找。
例如:
```
QString str = "Hello World";
int index = str.indexOf(QRegExp("\\bW\\w+\\b"));
// index的值为6
```
注意:以上三个函数都是区分大小写的,如果需要忽略大小写,可以使用类似于QString::compare()函数中的Qt::CaseInsensitive参数来指定。
阅读全文