采用所有CGI参数并通过并替换所有值

时间:2014-03-12 19:49:23

标签: perl cgi

所以我的代码看起来像这样:

 use CGI;
 my $q = CGI->new();
 print $q->param('var1');
 print $q->param('var2');
 print $q->param('var3');
等等..

我想要做的是,如果任何param包含()我想用\(\)

替换它

所以如果var1 = "1) blah"和我print $q->param('var1');我得到1\) blah

2 个答案:

答案 0 :(得分:0)

s/([()])/\\$1/g for values %{ $q->Vars }

答案 1 :(得分:0)

for my $key ($q->param) {
    my @vals = $q->param($key);
    if (grep {s/([()])/\\$1/g} @vals) {
        $q->param($key, @vals);
    }
}