G ++ 4.3 (и, возможно, более поздние версии) просто следят за заголовочными файлами для максимального соответствия стандартам.
Если вы программируете на C ++ 98 (текущий стандарт, который был разработан длянекоторое время), затем в технический отчет 1 была добавлена поддержка регулярных выражений, а файлы заголовка и находятся в специальном каталоге tr1
, а содержимое - в специальном пространстве имен std::tr1
.
.В новом стандарте C ++ 0x поддержка регулярных выражений была объединена со стандартной библиотекой, поэтому ее можно найти в заголовке regex
и пространстве имен std
.
G ++ гарантирует, что вы используете правильныеверсия для --std=
версии, которую вы указали в командной строке, хотя внутренне они оба являются одной и той же реализацией.
Таким образом, чтобы регулярное выражение работало без переключения на --std=c++0x
, просто
#include <tr1/regex>