我有一个QByteArray
和一些字符串。我想找到任何这些字符串的第一个出现,但没有一种方法。
目前我使用了一些indexOf
,但这一定是无效的,因为我想在第一次出现时停下来。
QByteArray
也有二进制数据,因此我认为我不应将其转换为QString
,而QByteArray
没有QRegExp
。
我有什么ATM:
int pos = buffer.indexOf("$G");
int pos2 = buffer.indexOf("XB00");
pos = pos == -1? pos2 : std::min(pos, pos2);
pos2 = buffer.indexOf("XA00");
pos = pos == -1? pos2 : std::min(pos, pos2);
buffer.remove(0,pos-1);
qt5
。 Qt
的{{1}}在幕后使用qbytearraymatcher.cpp。