Скажем, мне нужно только выяснить, содержит ли строка, прочитанная из файла, слово из конечного набора слов.
Один из способов сделать это - использовать регулярное выражение , например:
.*\y(good|better|best)\y.*
Еще один способ сделать это - использовать псевдо код, подобный следующему:
if ( (readLine.find("good") != string::npos) ||
(readLine.find("better") != string::npos) ||
(readLine.find("best") != string::npos) )
{
// line contains a word from a finite set of words.
}
Какой путь будет иметь лучшую производительность? (то есть скорость и загрузка процессора)