我试图拆分输入到使用CGI.pm制作的网页形式的$ string
分割是在'>'并且我使用shift从命令行工作以将文件放入脚本但是使用webform不起作用 - 即我没有输出。这可以从命令行使用shift来获取文件中的读取,如下所示:
my $inFile = shift;
open (IN, "$inFile");
$/ = ">";
while ( my $record = <IN> ) {
chomp $record;
my ($defLine, @seqLines) = split /\n/, $record;
my $sequence = join('',@seqLines);
然而,在cgi脚本中使用下面的代码不起作用 - 我猜cgi脚本是强制$ string?但我不确定如何继续
use CGI qw(:cgi-lib :standard);
print "Content-type: text/html\n\n";
my $seq = param('sequence');
$/ = ">";
chomp $seq;
my ($defLine, @seqLines) = split /\n/, $seq;
任何建议,非常感谢
答案 0 :(得分:2)
您对文件的所作所为:
local $/ = ">";
while (my $record = <IN>) {
chomp($record);
my ($defLine, @seqLines) = split /\n/, $record;
my $sequence = join('',@seqLines);
...
}
字符串的等价物:
for my $record (split />/, $sequence) {
my ($defLine, @seqLines) = split /\n/, $record;
my $sequence = join('',@seqLines);
...
}