QString 中查询是否包含某个字符串的一些小tips

可以使用contain()但该API有个容易被忽略的点:

(我使用的是Qt5.14.2)

比如我的字符串数据:“my beautiful life”,同时我需要查询其中是否包含ea,显而易见是完全包含的,但字符串这个时候会返回false。

因为contain中是按照“my”、“beautiful”、“life”这三个字符去查找的,所以若是这种情况下就会出现一些小问题,最好的解决方式是在判断是否包含的时候先将字符串进行处理。

我使用的就是去除字符串中所有空格,再去判断是否包含某个字符串。

删除所有空格的方法是:

QString str = “my beautiful life”;
str.remove(QRegExp(“\\s”));

再去判断

if(str.contain("ea",Qt::CaseInsensitive)){
    //执行接下来的操作
}else{
    //执行接下来的操作
}

希望我的学习能够帮助到你

你可能感兴趣的:(开发语言,c++,qt)