我有一个std::string A
我需要在里面找到字符串B
与内容,如bla-bla-bla
,并与其他字符串替换C
像abcdefg
如果B
没有被发现只是把C
在A
开始。如何在字符串中找到字符串并将其替换?
如何做这样的事情?
我有一个std::string A
我需要在里面找到字符串B
与内容,如bla-bla-bla
,并与其他字符串替换C
像abcdefg
如果B
没有被发现只是把C
在A
开始。如何在字符串中找到字符串并将其替换?
如何做这样的事情?
void replace_or_merge(std::string &a, const std::string &b, const std::string &c)
{
const std::string::size_type pos_b_in_a = a.find(b);
if(pos_b_in_a == std::string::npos) {
a.insert(0, c);
}
else {
a.replace(pos_b_in_a, b.length(), c);
}
}
+1 /声音的逻辑,但更好地传递b和c作为const std :: string&' – 2010-11-18 01:29:43
@Tony是的,你是对的。我修改了声明 – 2010-11-18 09:51:15
A.replace(str.find(B), B.length(), C);
您可能需要添加错误检查;-)
当你有一些那些URL,就用满的,你想让它使用类似“RTMP://”,而不是'http://',当然你更新知道'http://'。) – Rella 2010-11-17 22:16:02
你看过string :: replace和string :: find吗? – Cascabel 2010-11-17 22:16:34