我正在寻找一个字符串,例如:
std::string str = "_Data_End__Begin_Data_End";
|_________| |_____________|
data data
section1 section2
如果我在str
中搜索“开始”,我想确保在“data section2
”中找到它,如果在“data section1
”中找不到它/ p>
如果我知道“data section1
”的长度是否可能?
答案 0 :(得分:2)
std::string::find()
有一个可选参数,用于指示从哪里开始搜索:
str.find("Begin", length_of_data_section1);
答案 1 :(得分:2)
以下代码在字符串中搜索“Begin”。
std::string::size_type loc = str.find("Begin");
if(loc != std::string::npos)
{
std::cout << "found \"Begin\" at position " << loc << std::endl;
}
因为数据section2位于数据section1的末尾(而find()开始在position0处搜索),所以你不再需要代码了。