小编hw_*_*_sw的帖子

如何在文件中搜索包含 Perl 关键字的最后一块连续行

想象一个像下面这样的文本文件,其中 <some random text> 可以是任何东西或什么没有,这意味着 KEYWORD 可以出现在行中的任何地方,单独或与其他文本一起出现:

 1 <some random text>
 2 <some random text>KEYWORD<some random text>
 3 <some random text>KEYWORD<some random text>
 4 <some random text>
 5 <some random text>
 6 <some random text>KEYWORD<some random text>
 7 <some random text>
 8 <some random text>KEYWORD<some random text>
 9 <some random text>KEYWORD<some random text>
10 <some random text>KEYWORD<some random text>
11 <some random text>
12 <some random text>KEYWORD<some random text>
13 <some random text>KEYWORD<some random text>
14 …
Run Code Online (Sandbox Code Playgroud)

perl

3
推荐指数
1
解决办法
106
查看次数

如何在 Perl 哈希中存储和使用变量和子例程名称?

我的程序处理两种风格的“某物”,每种风格都有自己的数据结构和程序来处理它们。用户使用以下任一或两者调用程序:

  • -f1 path_to_file_with_flavor_1_data
  • -f2 path_to_file_with_flavor_2_data

我的程序工作编码为:

GetOptions ('f1=s' => \$f1_path,
            'f2=s' => \$f2_path,
           );

if (defined $f1_path) {
  subroutine_to_process_flavor_1_data( $f1_path );
}
if (defined $f2_path) {
  subroutine_to_process_flavor_2_data( $f2_path );
}
Run Code Online (Sandbox Code Playgroud)

它有一个散列来存储两种口味的处理数据:

my %flv_hash = ( flavor_1 => { datahash => { ... },
                             },
                 flavor_2 => { datahash => { ... },
                             },
               );
Run Code Online (Sandbox Code Playgroud)

我现在想将每个风味的变量和子程序名称添加到哈希中以使其:

my %flv_hash = ( flavor_1 => { datahash => { ... },
                               var_name => 'f1_path',
                               sub_name => 'subroutine_to_process_flavor_1_data',
                              },
                 flavor_2 => { datahash => { …
Run Code Online (Sandbox Code Playgroud)

perl

2
推荐指数
1
解决办法
109
查看次数

标签 统计

perl ×2