c++ - 如何分析 PCRE 形态?

标签 c++ performance pcre

我需要对时间和内存的 PCRE 模式进行性能分析。 下面的一些参数是使用 pcre_fullinfopcre_exec 函数从模式中提取的。

  • 编译模式的大小
  • 最高反向引用数
  • 捕获子模式的数量
  • 命名子模式的数量
  • 在随机缓冲区中找到匹配的时间

现在的问题是这些参数是否足够,或者我可以使用其他参数来进行更好的分析?

最佳答案

hamed,挖掘这个古老的问题,因为它是一个很好的问题,而且我看到你仍然活跃在 SO 上。

事实证明,PCRE 附带了一个非常有用的测试实用程序,称为 pcretest。除此之外,它还允许您在引擎尝试匹配字符串时跟踪引擎的路径,并允许您指定运行次数。

如果您使用的是 Unix 或 OSX,则必须按照 pcre.org 上的下载链接编译 pcretest。 .该软件包包含制作文件所需的一切。如果您使用的是 Windows,则 pcre.org首页告诉您在哪里可以获得最新的 pcretest 二进制文件,以及 Windows pcregrep 二进制文件,它也是 pcre 测试套件的一部分。

选项列表很长。

  1. 要在控制台中查看概览,请键入 pcretest --help
  2. 对于“入门”用法,请阅读提供 Windows 二进制文件(见上文)
  3. 有关完整说明,请参阅 official pcretest documentation .

关于c++ - 如何分析 PCRE 形态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13658979/

相关文章:

regex - 正则表达式中 "lookbehind assertion MUST be fixed length"的技术原因是什么?

javascript - 为什么不能在正则表达式中定义自己的自定义字符类?

c++ - 冲突类型交换void *和HINSTANCE

c++ - ANSI到Unicode或向后转换:怎么办?

c++ - 遗留项目中的重复代码删除策略

wcf - 简单WCF "Hello world"服务在负载下仅占用一个CPU核心

c++ - Pcrecpp 比赛

c++ - 在类的洋葱中搜索

performance - Postgres 性能问题

python - 如何优化一个 numpy 循环,该循环对一个数组中的值求和,该数组由另一个数组索引,其中值等于循环索引