std :: map частичное совпадение для ключа

У меня есть std :: map, и я хочу найти ключ, используя подстроку. Для экзамена

#include <iostream>
#include <map>
#include <string>
using namespace std;

typedef std::map<std::string, std::string> TStrStrMap;
typedef std::pair<std::string, std::string> TStrStrPair;

int main(int argc, char *argv[])
{
        TStrStrMap tMap;

        tMap.insert(TStrStrPair("John", "AA"));
        tMap.insert(TStrStrPair("Mary", "BBB"));
        tMap.insert(TStrStrPair("Mother", "A"));
        tMap.insert(TStrStrPair("Marlon", "C"));


        return 0;
}

Я хочу найти позицию, которая содержит подстроку "Marl", а не "Marlon". Является ли это возможным? Как?

РЕДАКТИРОВАТЬ: нет буст библиотеки!

Ответы на вопрос(4)

Ваш ответ на вопрос