从长字符串中删除字符

问题描述 投票:1回答:2

我有以下字符串:

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然后返回没有该字符的整个字符串?

c++ wxwidgets
2个回答
3
投票

只需使用擦除功能:

 imgURL.erase(4,1);

0
投票

根据the documentation,Remove()函数有重载,您可以在其中指定要从给定位置移除的字符数。 所以这应该做的伎俩:

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

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

© www.soinside.com 2019 - 2024. All rights reserved.