使用宏在c ++中修剪字符串

时间:2016-09-08 07:00:01

标签: c++

这是我尝试做的一个例子:

使用c ++中的宏从HELLOrs中提取字符串HELLO_EXTRArs 同样,来自HIDUDE

HI_EXTRADUDE

所以,基本上我想用宏删除字符串_EXTRA。 这可能吗?

2 个答案:

答案 0 :(得分:3)

我相信这就是你要找的东西:

std::string yourString = "something with _EXTRA";
std::string strToRemove = "_EXTRA";
size_t a = yourString.find(strToRemove);

if (a < yourString.length()) //if strToRemove is found in yourString
   yourString.erase(a, strToRemove.length());

答案 1 :(得分:-3)

这将为你完成这项工作,

#define removestr "_EXTRA"

使用以下代码替换,

string.replace(string.find(removestr),sizeof(removestr)-1,"");

其中string是“HI_EXTRADUDE”或包含“_EXTRA”的任何字符串值