Qt之字符串判断

                                                        判读字符串是否为空
成员函数isNull()和 isEmpty()都是用于判读字符串是否为空,但是稍有差别。如果是一个空字符串,只有"\0",isNull()则返回 false,而isEmpty()返回的是true;只有未赋值的字符串,isNull()才返回 true。比如:
QString strl,str2="";
N=str1.isNull();//N=true,未赋值字符串变量
N=str2.isNull();//N=false,只有"\0"的字符串也不是Null

N=str1.isEmpty();//N=true

N=str2.isEmpty();//N=true

         QString类对象只要赋值,就会在字符串的末尾自动加上"\0"。如果只是要判断字符串内容是否为空,常用isEmpty()函数。
                                                        判断是否包含某个字符串
函数contains()用于判断字符串内是否包含某个字符串,可指定是否要区分字母大小写。比如:
QString strl="d:\zcbBook\QT5.12Study\qw.cpp";
N=str1.contains(".cpp",Qt::CaseInsensitive);//N=true,不区分字母大小写

N=str1.contains(".CPP",Qt::CaseSensitive);//N=false,区分字母大小写

                                                  判断是否以某个字符串开头或结尾
函数startsWith()用于判断是否以某个字符串开头,函数endsWith()用于判断是否以某个字符串结束。比如:
QString str1="d:\zcbBook\QT5.12Study\qw.cpp";
bool N=str1.endsWith(".cpp",Qt::CaseInsensitive);//N=true,不区分字母大小写
N=str1.endsWith(".CPP",Qt::CaseSensitive);//N=false,区分字母大小写

N=str1.startsWith("g:");//N=true,默认为不区分字母大小写

又比如:

        if (url.startsWith("http:") && url.endsWith(".png")){}

等价于:

        if( url.left(5)=="http:" && url.right(4) == ".png"){}

但是前者更加清楚,并且性能更快。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

行者..................

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值