【问题标题】:Which regex flavors support captures (as opposed to capturing groups)?哪些正则表达式支持捕获(而不是捕获组)?
【发布时间】:2011-02-08 19:13:53
【问题描述】:

正如我刚刚从this question.NET regexes can access individual matches within a repeated capturing group 那里了解到的。

我。例如,如果我将\b(\w+\s*)+ 之类的正则表达式应用于一串单词,则只有最后一个单词将存储在\1Match.Groups(1).Value 中,但使用Match.Groups(1).Captures 我可以访问所有匹配正则表达式迭代的单个单词结束了。

除了 .NET 之外,还有其他支持此功能的正则表达式吗?

【问题讨论】:

  • 真的!我不知道。 +1
  • 这可能是对 Jan Goyvaerts 的呼吁

标签: regex language-agnostic capture


【解决方案1】:

据我所知,只有 .NET 和 Perl 6 提供该功能。

【讨论】:

  • 感谢 Perl 6。看起来 JGSoft 引擎正在进行小修。在我看来,捕获是一个有用的功能。递归/平衡正则表达式是否是一件好事,或者它们是否使正则表达式完全无法维护,我仍然持观望态度。
  • 我倾向于认为,如果您需要递归中间捕获,则根本不应该使用正则表达式。至少,不是 Perl 5 时代的正则表达式; Perl 6 包括对正则表达式语法的重大更改,使其更容易使用这些高级功能,并且仍然能够阅读您编写的内容。
  • 我刚刚查看了 Perl 6 正则表达式文档。哇,这与 Perl 5 相比有很大的变化...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-24
  • 1970-01-01
  • 2018-03-11
  • 1970-01-01
相关资源
最近更新 更多