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
Regex 在简单cgi搜索中添加正则表达式功能_Regex_Perl_Cgi - Fatal编程技术网

Regex 在简单cgi搜索中添加正则表达式功能

Regex 在简单cgi搜索中添加正则表达式功能,regex,perl,cgi,Regex,Perl,Cgi,我有这个简单的cgi脚本工作得很好,但我想添加正则表达式功能。可能吗?如果是,我需要补充什么。谢谢 #!/usr/local/bin/perl read(STDIN, $buffer,$ENV{'CONTENT_LENGTH'}); @pairs = split(/&/, $buffer); foreach $pair (@pairs) { ($key, $value) = split(/=/, $pair); foreac

我有这个简单的cgi脚本工作得很好,但我想添加正则表达式功能。可能吗?如果是,我需要补充什么。谢谢

    #!/usr/local/bin/perl
    read(STDIN, $buffer,$ENV{'CONTENT_LENGTH'});
    @pairs = split(/&/, $buffer);
    foreach $pair (@pairs) {
        ($key, $value) = split(/=/, $pair);
        foreach $pair (@pairs) {
            ($key, $value) = split(/=/, $pair);
            $value =~ tr/+/ /;
            $value =~ s/%([a-zA-Z0-9][a-zA-Z0-9])/pack("C", hex($1))/eg;
            $formdata{$key}.= "$value";
         }
     }
    $search = $formdata{'search'};
    open(INFO, "/test/myfile");
    @array=<INFO>;
    close (INFO);
#/usr/local/bin/perl
读取(STDIN,$buffer,$ENV{'CONTENT_LENGTH'});
@pairs=split(/&/,$buffer);
foreach$pair(@pairs){
($key,$value)=拆分(/=/,$pair);
foreach$pair(@pairs){
($key,$value)=拆分(/=/,$pair);
$value=~tr/+/;
$value=~s/%([a-zA-Z0-9][a-zA-Z0-9])/pack(“C”,十六进制($1))/eg;
$formdata{$key}.=“$value”;
}
}
$search=$formdata{'search'};
打开(INFO,“/test/myfile”);
@数组=;
关闭(信息);

…代码截断以查找以“.cgi”结尾的行:

my@array=grep/\.cgi$/;

请不要使用那种可怕的旧格式解析代码。CGI.pm包含在Perl中已经将近15年了。没有理由不使用它的
param
函数。你说的“添加正则表达式功能”是什么意思?@tadmc-ex。如果我想搜索所有带有cgi扩展名(*.cgi)的文件,则不会返回任何内容。我想这是因为外卡没有识别。@raindrop*.cgi不是正则表达式!这是一个“地球仪”。这方面的正则表达式是。*。cgi@tadmic!! 你完全正确!!我是一个有问题的人,而不是脚本:(with.*工作得很好。非常感谢!!!这项工作让文件扩展名为.cgi。你的答案上面(使用。*)灵活地替换任何扩展名。再次非常感谢!
my @array = grep /\.cgi$/, <INFO>;