to support windows, using pcre instead of re2