Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 在模式匹配(m/)中使用未初始化值?_Regex_String_Perl_Matching - Fatal编程技术网

Regex 在模式匹配(m/)中使用未初始化值?

Regex 在模式匹配(m/)中使用未初始化值?,regex,string,perl,matching,Regex,String,Perl,Matching,我已经看过了关于这个问题的其他答案,但仍然不确定我为什么会遇到这个问题:在模式匹配m中使用未初始化的值// 谢谢大家! 您的循环应该是: for (my $index = 0; $index < $#lines; $index++) { 如果最后一行与/^down/i匹配怎么办?然后将一个未定义的值分配给$line并继续: if (($line =~ /^Next-hop/i)) { $nh_ID[$curr] = substr($line

我已经看过了关于这个问题的其他答案,但仍然不确定我为什么会遇到这个问题:在模式匹配m中使用未初始化的值//

谢谢大家!

您的循环应该是:

for (my $index = 0; $index < $#lines; $index++) {
如果最后一行与/^down/i匹配怎么办?然后将一个未定义的值分配给$line并继续:

          if (($line =~ /^Next-hop/i)) {
              $nh_ID[$curr] = substr($line, 13, ((length($line) - 13)));
              print($line);
              $curr++;
           }
你会在哪里得到警告


由于没有更好的术语,您处理的方式很古怪。

您认为$index if (($line =~ /^Downstream/i)) { $index++; $line = $lines[$index]; print($line); $up_intf[$curr] = $line; }
          if (($line =~ /^Next-hop/i)) {
              $nh_ID[$curr] = substr($line, 13, ((length($line) - 13)));
              print($line);
              $curr++;
           }