没有正则表达式库的简单正则表达式?

xRo*_*bot 0 c c++

有没有办法知道字符串是否以"再见"结束而不使用正则表达式库?

也许使用strcpy,strlen,ecc.

Ben*_*ley 5

str.length() >= 7 && str.substr(str.length() - 7) == "goodbye"
Run Code Online (Sandbox Code Playgroud)

或者您可以使用boost :: ends_with,这可能更有效,因为它不会像分配新的字符串一样string::substr.

我可以使标准库版本更高效,如下所示:

str.length() >= 7 && std::equal(str.end() - 7, str.end(), "goodbye");
Run Code Online (Sandbox Code Playgroud)

实际上,现在我输入了它,我意识到它并不像我想象的那样繁琐,所以应该首选第一个版本.