QT QStringList 用法

QT QStringList 用法QTQStringList用法

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

QStringList类提供了一个字符串列表
从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”]

7.遍历

  QList<QString>::Iterator it = user.begin(),itend = user.end();
  int i = 0;
  for (;it != itend; it++,i++){

   if (*it == pFindLine->text()){//找到,高亮显示
    QModelIndex index = model->index(i);
    m_pTabList->setCurrentIndex(index);
    break;
   }
  }

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/136591.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • python编程爱心-如何用python画爱心「建议收藏」

    python编程爱心-如何用python画爱心「建议收藏」用python绘制爱心的基本步骤如下:首先先下载安装好python程序。在我们自己的电脑上找到python的IDLE工具。2.然后打开IDLE,新建一个文件,命名为test1.py。3.接着我们就开始导入turtle库,然后编辑代码。importturtleimporttime#画心形圆弧defhart_arc():foriinrange(200):turtle.right(1)t…

  • nmap命令详解「建议收藏」

    nmap命令详解「建议收藏」nmap是一个网络探测和安全扫描程序,系统管理者和个人可以使用这个软件扫描大型的网络,获取那台主机正在运行以及提供什么服务等信息。nmap支持很多扫描技术,例如:UDP、TCPconnect()、TCPSYN(半开扫描)、ftp代理(bounce攻击)、反向标志、ICMP、FIN、ACK扫描、圣诞树(XmasTree)、SYN扫描和null扫描。从扫描类型一节可以得到细节。nmap还

  • seata saga模式_lua状态机

    seata saga模式_lua状态机全网首发:SeataSaga状态机设计器实战。带你从0开始搭建一个基于springboot+seata的可执行Saga分布式事务demo,并避开状态机设计器中的各自坑

  • auto.js微信自动回复脚本_微信群助手机器人

    auto.js微信自动回复脚本_微信群助手机器人一、前言整体思路1)找到头像右上角有消息标志的聊天(注意直接跑下面代码的时候请确保聊天界面由此前提)2)点击进入聊天窗口,找到所有消息3)取最后一个消息(最新消息)4)和之前的新消息对比是否发生变化5)新消息推送至API6)收到API消息发送微信v8版本发送消息时,不再显示“发送”按钮了,也就没办法用找到“发送”控件的方法实现发送消息了。尝试用KeyCode(code)方式,发送回车键,发现也无效,原因查了一下好像是需要ROOT还是安卓9以上此方法失效。于是用坐标点击的方式点击键盘上的

  • Hibernate二级缓存提升性能(注解方式)

    Hibernate二级缓存提升性能(注解方式)合理的缓存应用可以极大地提高系统性能

  • es6 转es5_es6转换es5

    es6 转es5_es6转换es5为什么要es6转es5?答:es6代码在老版本的浏览器中无法执行。怎么将es6代码转为es5代码,让其在老版本的浏览器中执行?答:使用babel模块,babel是一个使用非常广泛的es6转换器,这就意味着我们可以将es6代码转为es5代码,从而在老版本的浏览器中执行。使用步骤:新建一个新的用来编写es6代码的文件夹,进入到该文件中,初始化一个项目npminit表示一步步通过配置来初始化一个项目npminit-y表示使用默认设置来快速初始化一个项目局部安装babel-cli

发表回复

您的电子邮箱地址不会被公开。

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