在字符串中{\"AP_LIST\":[ {\"SSID\":\"xinjia\", \"SIGNAL\":\"100\", \"IS_PROTECTED\":\"1\" }, {\"SSID\":\"xinjia_CK\", 提取xinjia字符串
时间: 2023-06-28 12:15:44 浏览: 110
提取字符串中的符号
可以使用正则表达式来提取字符串中的 `xinjia` 子串。具体的实现代码如下:
```cpp
QRegExp rx("\"SSID\":\"(\\w+)\"");
QString str = "{\"AP_LIST\":[ {\"SSID\":\"xinjia\", \"SIGNAL\":\"100\", \"IS_PROTECTED\":\"1\" }, {\"SSID\":\"xinjia_CK\" } ]}";
int pos = 0;
while ((pos = rx.indexIn(str, pos)) != -1) {
QString match = rx.cap(1); // 获取匹配到的子串
qDebug() << match;
pos += rx.matchedLength(); // 将位置移到下一个匹配处
}
```
其中,`rx` 是定义的正则表达式,`str` 是要匹配的字符串,`pos` 是匹配的起始位置。
代码中使用了 `indexIn` 函数查找字符串中是否匹配正则表达式,如果匹配则调用 `cap` 函数获取匹配到的子串。最后使用 `matchedLength` 函数将位置移到下一个匹配处。
输出结果为:
```
xinjia
xinjia_CK
```
可以看到成功提取了 `xinjia` 的子串。
阅读全文