2012-10-25 52 views
0

我对基本的Regex库感兴趣。我相信我可以使用C++ TR1。在研究过程中,类似的答案声称C++ TR1由Boost提供(某些免提)。C++,TR1,正则表达式和提升

也许我错过了一些东西,但我没有看到C++技术committee对Boost的确认,我怀疑Microsoft,Dinkumware等在它们的实现中使用它。看看海湾合作委员会的资料来源,我甚至不确定海湾合作委员会正在使用Boost图书馆。

任何人都可以指出TR1正则表达式是由Boost提供的声明的参考吗?

Jeff

回答

2

TR1不是由boost提供的。但助推有自己的TR1实现。 http://www.boost.org/doc/libs/1_47_0/doc/html/boost_tr1.html

TR1库提供了标准库扩展的C++技术报告的实现。这个库本身并不实现TR1组件,而是一个很小的包装器,它将包含标准库的TR1实现(如果它有一个),否则它将包含Boost库等价物,并将它们导入到命名空间std :: tr1中。

+0

谢谢。我认为这是来自Boost Fan Boi的更多BS。 – jww

2

TR1正则表达式为而不是由Boost提供。 TR1将由您的实施提供。然而,TR1大部分是,基于来自Boost库的内容。 Boost的许多贡献者恰好是C++标准委员会成员,所以Boost经常被用作将来被采用到C++标准库中的测试场。然而,现在TR1已经很老了,大多数实现已经将所有东西都移到了标准库中,所以没有太多理由在TR1命名空间中使用东西,除非为了向后兼容。

1

我推荐PCRE。它是Phillip Hazel编写的一个非常成熟,功能强大且功能强大的开源C库regex引擎,用于许多着名的项目,如PHP,Apache,KDE,Safari等。有一个C++包装器可用。

请参阅:PCRE - Perl Compatible Regular Expressions