Qt QML 杂记Qt

Qt 用指定字符指定间距分割字符串

2017-11-03  本文已影响7人  赵者也

实现代码如下:

#include <QCoreApplication>
#include <QDebug>

//参数说明:
//org 要修改的字符串
//ch 要插入的字符串,默认为 空格
//nSpacing 指定间距,默认为1,即一个字符中间插入一个ch

QString splitFormatString(const QString& org, int nSpacing = 1,
                        const QString& ch = QString(" "))

{
      QString result = org;
      if (org.size() <= nSpacing) {
          result.push_front(ch);
      } else {
          result.clear();
          for (int i=0; i<org.size(); ) {
              result.append(org.mid(i, nSpacing));
              i += nSpacing;
              if (i < org.size()) {
                  result.append(ch);
              }
          }
      }
      return result;
}

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    QString test("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
    qDebug()  << "source string: " << test;

    QString result = splitFormatString(test, 3);
    qDebug() << "result string0: " << result;

    result = splitFormatString(test, 100);
    qDebug() << "result string1: " << result;

    return a.exec();
}

运行效果:

运行效果
上一篇下一篇

猜你喜欢

热点阅读