想象一下,我有一个包含这个的QString:
"#### some random text ### other info a line break ## something else"
我怎样才能知道我的QString中有多少哈希?
换句话说,如何从这个字符串中获取数字9?
回答
解决方法
您可以使用
this方法并传递#字符:
#include <QString> #include <QDebug> int main() { // Replace the QStringLiteral macro with QLatin1String if you are using Qt 4. QString myString = QStringLiteral("#### some random text ### other info\n \ a line break ## something else"); qDebug() << myString.count(QLatin1Char('#')); return 0; }
然后使用gcc,您可以使用以下命令或类似的东西来查看结果.
g++ -I/usr/include/qt -I/usr/include/qt/QtCore -lQt5Core -fPIC main109.cpp && ./a.out
输出将是:9
正如您所看到的,没有必要自己迭代,因为Qt便捷方法已经为您使用内部qt_string_count
.