std::string comparison (check whether string begins with another string)
I need to check whether an std:string begins with "xyz". How do I do it without searching through the whole string or creating temporary strings with substr(). I would use compare method: std::string s("xyzblahblah"); std::string t("xyz") if (s.compare(0, t.length(), t) == 0) { // ok } Neutrino An approach that might be more in keeping with the spirit of the Standard Library would be to define your own begins_with algorithm. #include <algorithm> using namespace std; template<class TContainer> bool begins_with(const TContainer& input, const TContainer& match) { return input.size() >= match.size