我正在尝试解析一个包含我的 XML 文件行的字符串。
std::string temp = "<Album>Underclass Hero</Album>";
int f = temp.find(">");
int l = temp.find("</");
std::string _line = temp.substr(f + 1, l-2);
这是我的函数代码的一部分,它实际上应该返回解析的字符串。我所期望的是它会返回Underclass Hero。相反,我得到了Underclass Hero< /Alb
(这里在 '<' 和 '/' 之间有一个空格,因为我无法将它们写在一起)。
我看了 std::string::find 几次,它总是说它返回(如果存在)第一个匹配的第一个字符的位置。在这里,它给了我字符串的最后一个字符,但只在我的变量l中。
f没问题。
那么谁能告诉我我做错了什么?