regex 如何将%{v_扩展}转换为Perl re

ruyhziif  于 2023-06-30  发布在  Perl
关注(0)|答案(1)|浏览(102)

我在一个文本文件中有一堆基本的正则表达式(BREs),一行一行,通常用于grep选项-f,我也想在Perl脚本中加载它们,以添加一些诊断。但是由于grep和Perl的正则表达式语法完全不同,我不能只做qr{$_}或类似的语法。
我真的不想将包含BREs的文件转换为PCRE语法或类似的语法,以免增加其他工具的需求,因此在Perl脚本中将BRE转换为Perl正则表达式语法是我首选的,也是目前为止最不破坏性的选择。
不幸的是,我没有找到一个Perl模块来实现这一点,在我推出自己的模块之前,我想在这里征求一些建议。

8oomwypt

8oomwypt1#

Perl支持可插入的regexp引擎,尽管它不是一个经常使用的特性。

use re::engine::GNU;

$text =~ {
  syntax  => $re::engine::GNU::RE_SYNTAX_GREP | $re::engine::GNU::RE_ICASE,
  pattern => "foo?bar",
};

相关问题