当前位置: 代码迷 >> 综合 >> QString中去除空格
  详细解决方案

QString中去除空格

热度:59   发布时间:2024-03-10 01:56:05.0

1.去除字符串前面空格

使用正则表达式:
QSring.remove(QRegExp("^ +\s*"));
实例:

QString str = " aa ";//字符串aa前后各三个空格
str.remove(QRegExp("^ +\\s*"));
//运行结果: str="aa ";

2.去除字符串后面空格

使用正则表达式:
QSring.remove(QRegExp("\s* +$"));
实例:

QString str = " aa ";//字符串aa前后各三个空格
str.remove(QRegExp("\\s* +$"));
//运行结果: str=" aa";

3.去除字符串中首尾空格

(1)QString QString::simplified() const
返回一个字符串,移除从一开始到结尾的空白,每个序列内部的空格替换为一个空格(头尾的都去掉了)
实例

QString str = " aaa\t 44\ngood\r\n ";
str = str.simplified();
//结果: str == "aaa 44 good";

‘\t’, ‘\n’, ‘\v’, ‘\f’, ‘\r’, ’ ’ 都属于空白的处理范围。

(2)QString QString::trimmed() const
返回一个字符串,移除从一开始到结尾的空白。也去掉头尾的空白
实例

QString str = " aaa\t 44\ngood\r\n ";
str = str.trimmed();
//结果:str == "aaa\t 44\ngood";

4.删除所有空格

使用正则表达式:
QSring.remove(QRegExp("\s"));
实例

QString str = " a c d a ";//字符串aa前后各三个空格
str.remove(QRegExp("\\s"));
//运行结果: str="acda";
  相关解决方案