【发布时间】:2015-11-24 16:58:03
【问题描述】:
我想检索'='之前的所有值/单词
Ex:
A = my first variable, I wanted to get all the strings;
var2 = I wanted to get this variable also;
var3 = jcdksjfckjdsckjdscjkdsbckjdsncjsjd;
现在我想从上面的文本(c++ std::string)中检索所有变量(A, var2, var3)。
更新:一种可能的方法是
vector<string> myClass::getVariablesFromDescription(string f_description)
{
vector<string> l_variables;
stringstream l_desc;
l_desc << f_description;
string l_temp;
string l_prvStr = string();
for(int i=0; l_desc >> l_temp ; i++ )
{
if(l_temp == string("="))
{
l_variables.push_back(l_prvStr);
}
l_prvStr = l_temp;
}
return l_variables;
}
【问题讨论】:
-
可以做C风格的字符串解析(char by char),但是看看是否有一些现成的函数或可用于std::string的方法。
-
看看
std::string's interface,有一些成员函数可以让它比你自己编写解析代码更干净一些。 (具体来说,find和substr应该会派上用场) -
我以前只看过它们,我们可以用 find 获得 '=' 的索引,但是我怎样才能在 to = 之前找到单词?任何提示
-
我认为有些人他们只是投票而没有阅读和理解,可以看到我的答案。