c++ - 如何将 pcre_study 与 pcrecpp 一起使用?

标签 c++ regex performance pcre

我正在使用 Google 的 C++ PCRE 接口(interface)多次(可能数千次)匹配单个正则表达式。通过阅读 PCRE 手册,让 PCRE“研究”(花时间优化)正则表达式似乎是个好主意,但是,我似乎找不到使用 C++ 包装器来做到这一点的方法。 pcrecpp.h 根本没有提到学习。

使用 pcre_study() 是否值得,如果是,它如何与 pcrecpp 及其 RE 类结合使用?

最佳答案

来自 PCRE++ source code 的快速扫描, 似乎“研究”是不可能用这个 API 因为 RE 包装器对象的已编译 RE (pcre*) 成员是 private 并且无法将其取出或重置。

如果你想知道学习优化是否值得你的 RE,我看到的最简单的选择是将 pcrecpp.{cc,h} 复制到你的项目中并将其 hack 进去; C++ API 只是一些简单的包装代码。如果你像我一样喜欢用你的名字和版权乱扔开源项目,你甚至可能想要向上游提交补丁 ;)

关于c++ - 如何将 pcre_study 与 pcrecpp 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9750574/

相关文章:

c++ - 静态成员不允许使用不完整的类型

java - 将java源文件合并为一个

javascript - 在 IE 中 Javascript 的执行速度比 Firefox、Safari 和 Chrome 慢

mysql - 在 MySQL 查询中重复 COUNT(*) 成本昂贵吗?

c++ - 在 C++ 中使用 popen 调用时 cli 实用程序崩溃。在 shell 或 fork、exec 等中工作正常

c++ - 总模板特化

c++ - 需要一种方法将我的霍夫曼树写入我的编码

javascript - 匹配字符但不包括该字符和之后的所有内容

javascript - 用正则表达式检测每个单词的第一个字母是否大写

jquery - 与 Jquery ajax 相比,Angularjs $http ajax 请求较慢