C++,按行比较字符串

C++, comparing string in lines

我需要检查我的变量是否存在于文本文件中每一行的特定位置,以及它是否与行中的相同。

我的文本示例中的行:

one two variable 11 221
123 t12 variable 11 331
123 t12 bad_var  11 331

我想检查 variable 是否存在于 9 to 16 所在的行中。 我的代码:

std::ifstream my_text_file("text_file.txt");
std::string str
if(my_text_file)
    {
     while(std::getline(my_text_file,str))
         {
          if(my_text_file.seekg(9,std::ios::beg))
             { //what should i wrote here?//   }
         }
    } 

编辑:

我的 variable 它的字符串看起来像 abc3 ,我怎么能只选择前 3 个字母来比较我的变量 abc ? 谢谢

最简单的方法可能是将整行读入一个字符串,然后使用 substr().

在字符串中的正确位置检查 variable
std::getline(my_text_file, str);
std::string var = "variable";
if (str.substr(9, var.size()) == var) {
    // do stuff
}