0

我有一个带有多行文本的 QString,开头没有空格,例如:

Lorem ispum   
Dolor a si met   
Hulu il it er   

我想为每一行添加空间以获得如下内容:

      Lorem ispum  
      Dolor a si met   
      Hulu il it er     

有关信息,我使用 QT 的 QString

4

2 回答 2

2

你可以使用QString::replace()

QString s = "Lorem ispum\nDolor a si met\nHulu il it er ";
s.replace(QRegExp("^"), "\t");

您也可以不使用正则表达式:

s.insert(0, '\t');
s.replace('\n', "\n\t");

这将\t在每一行的开头添加一个制表符 ( ),如果要添加空格,只需替换\t为空格即可。

于 2013-05-21T12:33:18.553 回答
1

只需遍历字符串中的每个字符,同时复制到第二个字符串。一旦你看到一个换行符然后复制它并添加所需的空格。

或者简单地使用以下replace功能:

str.replace('\n', "\n\t");
于 2013-05-21T12:33:32.533 回答