在MSVC中是否有正则表达式的捆绑库?

时间:2010-07-03 18:56:08

标签: c regex visual-c++

如果我用gcc编译C程序,我可以放心地假设regex.h中的函数可用。如果有人正在使用microsoft的C编译器编译,我可以假设有一个正则表达式库吗?

5 个答案:

答案 0 :(得分:1)

仅限C ++,但可能是您可以使用(或换行)的东西:

Visual C ++ 2010包括TR1正则表达式库支持。

它也适用于功能包中的VC ++ 2008:

答案 1 :(得分:0)

不,我不认为MSVC捆绑了任何正则表达式库。

Regex不是C / C ++标准库的一部分,因此默认情况下不应依赖任何提供此类库的编译器。最好是为C获取一个单独的正则表达式库(我确定有很多可用的)并将其包含在您的代码中。

答案 2 :(得分:0)

尝试Boost或等待C ++ 1x的发布......

答案 3 :(得分:0)

没有与msvc捆绑在一起的C / C ++正则表达式库。 C ++ / CLI可以通过。

访问.NET正则表达式类

也许您可以使用PCRE

答案 4 :(得分:0)

如果你想要POSIX兼容的正则表达式语义(以及相同的API!)那么最好的正则表达式库是TRE:http://laurikari.net/tre/

与大多数正则表达式实现不同,它遵循POSIX完全关于它为带括号的子表达式返回的匹配,并且它是O(n),而大多数实现都是O(2^n)及时。

Google还有一个新的正则表达式实现,如果您愿意,可以使用与Perl兼容的语法。您可以在TRE网站上找到一个链接。

编辑:顺便说一句,TRE似乎附带了项目文件来在MSVC下构建它。