Qt QStringList的简单使用方法「建议收藏」

Qt QStringList的简单使用方法「建议收藏」从QList继承而来,它提供快速索引为基础的接入以及快速插入和清除其成员函数用于操作这个字符串列表如append(),insert(),replace(),removeAll(),removeAt(),removeFirst(),removeLast(),andremoveOne()等1.  增加字符串  可以通过append(),或使用  QString

大家好,又见面了,我是你们的朋友全栈君。

从QList <QString>继承而来,它提供快速索引为基础的接入以及快速插入和清除

其成员函数用于操作这个字符串列表如

append(),insert(), replace(), removeAll(), removeAt(), removeFirst(), removeLast(), and removeOne()等

1.   增加字符串

   可以通过append(),或使用<<,如

   QStringList fonts;

   fonts << “Arial” << “Helvetica” << “Times” << “Courier”;

           // fonts:[ “Arial” ,”Helvetica”, “Times” , “Courier”]

2.    合并字符串使用join( )

QString str = fonts.join(“,”);

          // str == “Arial,Helvetica,Times,Courier”

3.   拆分字符串

         QString str = ” Arial,Helvetica, ,Times,Courier “;

        QStringList list1 = str.split(“,”);

        // list1: [ ” Arial “, ” Helvetica “,” “, ” Times “, ” Courier ” ]

       QStringList list2 = str.split(“,”, QString::SkipEmptyParts);

       // list2: [ ” Arial “, ” Helvetica “, ” Times “, ” Courier ” ]

     也就是说如果有QString::SkipEmptyParts,空项不会出现在结果。默认情况下,空项被保留

4.   索引

       IndexOf()函数返回给定字符串的第一个出现的索引。

       而lastIndexOf()函数,返回字符串的最后一次出现的索引。

5.    替换replaceInStrings()

QStringList files;

        files << “$QTDIR/src/moc/moc.y”

                 << “$QTDIR/src/moc/moc.l”

                  << “$QTDIR/include/qconfig.h”;

            files.replaceInStrings(“$QTDIR”, “/usr/lib/qt”);

                  // files: [ “/usr/lib/qt/src/moc/moc.y”, …]

6.     过滤filter()

可以让你提取一个新的列表只包含这些字符串包含一个特定的字符串(或匹配特定正则表达式):

           QStringList list;

           list << “Bill Murray” << “John Doe” << “Bill Clinton”;

   QStringList result;

          result = list.filter(“Bill”);

          // result: [“Bill Murray”, “Bill Clinton”]

转自:http://blog.csdn.net/qq419036154/article/details/6502150

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135754.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java基础菜鸟教程容器类,复习指南[通俗易懂]

    java基础菜鸟教程容器类,复习指南[通俗易懂]面试官最爱问的Kakfa,基础+进阶+高级,疯狂轰炸!Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。对于像Hadoop的一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一个可行的解决方案。Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群来提供实时的消息

    2022年6月28日
    25
  • STM32F407 + LAN8720A + LWIP 实现TCP服务器

    STM32F407 + LAN8720A + LWIP 实现TCP服务器STM32F407+LAN8720A+LWIP实现TCP客户端环境说明:开发板:某宝买的,STM32F407IGSTM32CUBEMX5.6HALLibVersion1.25(一)配置时钟(二)配置调试串口(三)配置以太网ETH(1)基础配置顺序依次说明:LAN8720A使用的是RMII接口进行配置寄存器自动重连使能MAC地址LAN8720A的物理地址(类似IIC的从设备地址),可配置为0或者1,由LAN8720A的RXER/PHYAD0引脚控制

    2022年6月17日
    50
  • idea和eclipse哪个区别_第一责任和主要责任的区别

    idea和eclipse哪个区别_第一责任和主要责任的区别IDEA中“newProject”就eclipse的“workspace”,而“newModule”才是创建一个工程,这是要注意的一点。IDEA不会自动编译和加载CLASS,ECLIPSE是自动的,IDEA可以通过ModeEclipse插件来实现自动加载和编辑ClassIDEA编辑的文件是自动保存的,不能设置为手动保存,这个和Eclipse差别最大,很多人

    2022年8月29日
    1
  • 彻底明白vue双向绑定底层原理(源码分析)

    彻底明白vue双向绑定底层原理(源码分析)vue是一个mvvm框架,双向绑定是vue的一个核心功能,所谓双向绑定就是当试图发生改变的时候传递给VM(ViewModel),让数据得到更新,当数据发生改变的时候传给VM(ViewModel),使得视图发生变化!概念都知道,但是vue怎么做到的呢?看下面的一张图(图是搬运别人的)可能你现在看不明白,observer是什么东西,watchter,Dep又是什么东西?没有关系,接下来只要你看完我这篇文章,保证给你整的明明白白!看上图,从左边开始newMVVM其实就是我newVue(),我们一

    2022年9月14日
    0
  • Redis哨兵模式主从同步不可以绑定127.0.0.1或者0.0.0.0,不然无法进行主从同步

    Redis哨兵模式主从同步不可以绑定127.0.0.1或者0.0.0.0,不然无法进行主从同步

    2021年6月6日
    90
  • webstorm2021.5激活码【在线注册码/序列号/破解码】

    webstorm2021.5激活码【在线注册码/序列号/破解码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日
    46

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号