从长字符串中删除字符

时间:2018-03-06 12:07:25

标签: c++ wxwidgets

我有以下字符串:

https://example.com/get/ea34b8062cr2533eed0b4302e44d4090e26ae3c01bb1124292f3c970_1280.jpg

我想从此部分s中删除字符https并再次返回整个字符串,但不包含s字符。

wxString imgURL = "https://example.com/get/ea34b8062cr2533eed0b4302e44d4090e26ae3c01bb1124292f3c970_1280.jpg";
imgURL.Remove(imgURL.find('s'));
this->m_textShowData->SetValue(imgURL);

不幸的是,前面的代码删除了s字符,但没有再次返回整个字符串,但只返回http

如何删除字符s,然后返回没有该字符的整个字符串?

2 个答案:

答案 0 :(得分:3)

只需使用擦除功能:

 imgURL.erase(4,1);

答案 1 :(得分:0)

根据the documentation删除()函数有重载,您可以在其中指定要从给定位置删除的字符数。
所以这应该可以解决问题:

imgURL.Remove(imgURL.find('s'), 1);

但是这个函数只是出于兼容性原因而保留,正如文档中提到的那样,它不应该用在新代码中。请改为查看erase()函数,其语法与Remove()

相同