我正在使用两个字符串向量来存储两个文本文件。我需要将两者进行比较,并将单词更改为匹配单词的“ *”。我已经为匹配100%(“ bat”到“ bat”)的字符串进行了所有工作,但我需要它也包含Battle,因为其中包含字符串“ bat”。我尝试使用strcmp,但没有运气!如果有人可以提供帮助,请尝试指出正确的方向。谢谢。测试列表向量包含所有单词列表,输入列表包含原始数据(句子和单词)。

以下是代码:

for (int j=0; j < testlist.size(); j++)
{
    for (int i = 0; i < inputlist.size(); i++)
    {
        if (inputlist[i] == testlist[j])
        {
            inputlist[i] ="*";
        }
    }
}

最佳答案

您可以使用find()代替strcmp()

size_t found = inputlist[i].find(testlist[j]);
if(found != string::npos) {
   inputlist[i] = "****";
}

10-04 13:06