По крайней мере, в Visual Studio 2013 это и связанные имена (cmatch, regex_match) одинаковы в обоих пространствах имен. Они также имеют одинаковый (или похожий?) Интерфейс.
Таким образом, вы можете просто изменить пространство имен, и тот же код будет скомпилирован с другим регулярным выражением без предупреждения и ошибок. И это должно работать так же, конечно.
P.S. Я бы предпочел std :: regex, поскольку он является частью C ++ 11, а boost :: regex - сторонняя библиотека. Я уверен, что через несколько лет boost удалит поддержку boost :: regex.