获取字符'='之前的所有标准::字符串或第一个单词

get all the std::string's or first word's before character '='

本文关键字:单词 标准 字符串 第一个 字符 获取      更新时间:2023-10-16

我想检索'='之前的所有值/单词

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;
}

您可以创建一个新字符串,开始逐字节复制原始字符串,并在检测到'='时停止。

string example = "var69 = asdfghjkl";
string var_name;
for(int i=0; i<example.size(); i++)
{
    if(example[i] == '=') break;
    var_name += example[i];
}

我还不能发表评论,但您要求提供提示。

find返回=符号所在的位置。您还知道您从0开始。然后,您可以将字符串从0复制到位置,然后将其复制出来。