#include #include #include #include #include #include #include #include #include using namespace std; /* * Matcht nicht wie es soll. */ int main(int argc, char** argv) { std::string test= "Netzwerk 20 00C1\n +---+\n M 70.2 ---! & !\n E 64.2 ---! !\n E 81.0 --O! !\n E 81.1 --O! !\n E 81.2 ---! !\n E 81.3 --O! !\n E 81.6 --O! !\n E 81.4 --O! ! +------+\n E 81.5 --O! !--+-! S ! M 72.3\n +---+ ! +------+\n ! +------+\n +-! S ! M 81.1\n +------+\n"; string pattern[] ={ "([E][ ]{1,3}{0,4}[0-9]{1,3}[.][0-7])", "([A][ ]{1,3}{0,4}[0-9]{1,3}[.][0-7])", "([S][ ]{1,3}{0,4}[0-9]{1,3}[.][0-7])", "([M][ ]{1,3}{0,4}[0-9]{1,3}[.][0-7])" }; for (int n = 0; n < 2; n++) { regex rgx(pattern[n], std::regex::ECMAScript); sregex_iterator next(test.begin(), test.end(), rgx); sregex_iterator end; while (next != end) { smatch match = *next; const std::string eam = match.str(); regex exprRRepEAM(eam,regex::ECMAScript); cout<<"gefunden:"<