C++ 11 新增于 Boost 1.18.0
分类: 字符串
正则表达式库。
本次发布
依赖项
已移除
Boost Regex 库
Boost Regex 库为 C++ 提供了正则表达式支持,该库是 std::regex 的前身,并且仍然在某些方面超越了标准版本,提供了一些优势。
完整文档可在 boost.org 上找到。
独立模式
该库现在可以“独立”使用,无需其余的 Boost C++ 库。要做到这一点,您必须要么
- 拥有支持 __has_include 的 C++17 编译器,在这种情况下,如果不存在 <boost/config.hpp>,则库将自动进入独立模式。或者
- 在构建时定义 BOOST_REGEX_STANDALONE。
两种模式的主要区别在于,当 Boost.Config 存在时,库将自动围绕各种编译器缺陷进行配置。特别是,为了在关闭异常支持的情况下使用该库,您需要将 Boost.Config 副本放在您的 include 路径中,或者在构建时手动定义 BOOST_NO_EXCEPTIONS。
无论如何,要获得该库的独立版本,只需下载此存储库“master”分支的 .zip 文件即可。
支持、错误和功能请求
可以通过 Gitub 问题跟踪器(请参阅 未解决的问题 和 已解决的问题)报告错误和功能请求。
您可以通过 pull request 提交您的更改。
Boost Regex 没有特定的邮件列表,但您可以使用通用的 Boost 邮件列表,并在主题中使用 [regex] 标签。
开发
克隆整个 boost 项目,其中包含各个 Boost 项目作为子模块(参见 boost+git 文档)。
git clone https://github.com/boostorg/boost
cd boost
git submodule update --init
Boost Regex 库位于 libs/regex/
。
运行测试
首先,请确保您位于 libs/regex/test
目录下。您可以运行 Jamfile.v2
中列出的所有测试,或者运行单个测试。
../../../b2 <- run all tests
../../../b2 regex_regress <- single test