我是靠谱客的博主 善良大炮,这篇文章主要介绍Qt:关于QString索引为负数的一些发现,现在分享给大家,希望可以做个参考。

使用QString截取字符串,调用mid函数,str2.mid(-5,3),发现返回为空字符串,后来想起原来是python可以肆意使用负数索引。但又发现之前使用remove函数成功的删除了一段字符串。

QString str1("qwe123123jio123j");
QString str2("qwe123123jio123j");
QString str3("qwe123123jio123j");
qDebug() << str1.remove(-5,3);
qDebug() << str2.mid(-5,3);
qDebug() << str3.replace(-5,3, QChar('M'));

输出:

“qwe123123ji3j”
“”
“qwe123123jio123j”

所以现在知道remove是可以的,其他应该都不可以。

本意是想从末尾截取一段字符串,但长度不一定是达到了尾部。
可以使用下面的方式:

已知要截取字符串的开始位置在pos(如倒数第9),截取的长度是len

int pos = 9;   //倒数第九
int len = 3;

QString str1("qwe123123jio123j");
QString str2("qwe123123jio123j");
QString str3("qwe123123jio123j");
qDebug() << str1.remove(-5,3);
qDebug() << str2.right(pos).left(len);     //倒着截取
qDebug() << str3.replace(-5,3, QChar('M'));

输出:

“qwe123123ji3j”
“23j”
“qwe123123jio123j”

最后

以上就是善良大炮最近收集整理的关于Qt:关于QString索引为负数的一些发现的全部内容,更多相关Qt:关于QString索引为负数内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(129)

评论列表共有 0 条评论

立即
投稿
返回
顶部