Dillinur
Dillinur

Reputation: 145

Simple Regex Usage in C++

I try to do the most basic regex example in C++ using the default lib, and I keep getting either crashes or incoherent behavior.

// with -std=c++11
#include <regex>
using namespace std;

int main()
{
    // Copied from the documentation, this one works
    if (std::regex_match ("subject", std::regex("(sub)(.*)") ))
        std::cout << "string matched\n";
    // The most simple example I could try, crash with "regex_error"
    if (std::regex_match ("99", std::regex("[0-9]*") ))
        std::cout << "integer matched\n";
}

I've tried multiple syntaxes and flags, but nothing seems to work. Since my code seems to be matching all the examples I can find, I'm struggling to see what I'm missing.

Upvotes: 1

Views: 209

Answers (1)

Dillinur
Dillinur

Reputation: 145

As @Wiktor Stribiżew stated, it was just my compiler being too old. Updating the compiler (from gcc 4.1 to gcc 4.9) solved the problem!

Upvotes: 1

Related Questions