【问题标题】:Qt QString maxsplit argumentQt QString maxsplit 参数
【发布时间】:2013-08-20 19:14:31
【问题描述】:

Python 字符串有一个函数split(),它可以接受一个maxsplit 参数(来自Python docs):

如果给出了 maxsplit,则最多完成 maxsplit 拆分(因此,列表 最多有 maxsplit+1 个元素)。如果未指定 maxsplit 或 -1,则拆分次数没有限制(所有可能的 分裂)。

QStrings 可以做到这一点吗?我查看了文档,没有 split() 重载将等于 maxsplit 的整数作为参数。

【问题讨论】:

    标签: qt qstring


    【解决方案1】:

    看起来不像,虽然实现起来似乎微不足道-

    QString str("How are all of you doing");
    QStringList list = str.split(' ').mid(0, maxSplit);
    QString remainingStr = str.section(' ', maxSplit);
    list << remainingStr;
    

    或者如果你想提高性能,你可以从 QString::split 复制代码,然后添加额外的功能。代码位于qtbase/src/corelib/tools/qstring.cpp。您只需在 while 循环中添加 &amp;&amp; list.size() &lt;= maxSplit 即可。

    【讨论】:

      猜你喜欢
      • 2012-09-21
      • 2021-11-16
      • 1970-01-01
      • 1970-01-01
      • 2018-07-11
      • 1970-01-01
      • 1970-01-01
      • 2017-11-14
      • 2014-04-18
      相关资源
      最近更新 更多