Если вы хотите POSIX-совместимую семантику регулярных выражений (и тот же API тоже!), То лучшей библиотекой регулярных выражений является TRE: http://laurikari.net/tre/
В отличие от большинства реализаций регулярных выражений, он следует POSIX именно в отношении совпадений, которые он возвращает для заключенных в скобки подвыражений, и это O(n)
, тогда как большинство реализаций O(2^n)
во времени.
Google также имеет новую реализацию регулярных выражений, которая использует Perl-совместимый синтаксис, если вы предпочитаете это. Вы можете найти ссылку на веб-сайте TRE.
Редактировать: Кстати, кажется, TRE поставляется с файлами проекта, чтобы собрать его под MSVC.