Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.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
Perl LWP::数组中的Simple File.txt不是空格_Perl - Fatal编程技术网

Perl LWP::数组中的Simple File.txt不是空格

Perl LWP::数组中的Simple File.txt不是空格,perl,Perl,文件没有空格,我是否需要保留相应数组中的每个单词, 在var中,文件更大,但这是可以的 my $file = "http://www.ausa.com.ar/autopista/carteleria/plano/mime.txt"; &VPM4362=008000&VPM4381=FFFFFF&VPM4372=FFFFFF&VPM4391=008000&VPM4382=FFFF00&VPM4392=FF0000&VPM4182=FFFF

文件没有空格,我是否需要保留相应数组中的每个单词, 在var中,文件更大,但这是可以的

my $file = "http://www.ausa.com.ar/autopista/carteleria/plano/mime.txt"; 

&VPM4362=008000&VPM4381=FFFFFF&VPM4372=FFFFFF&VPM4391=008000&VPM4382=FFFF00&VPM4392=FF0000&VPM4182=FFFFFF&VPM4181=FFFF00&VPM4402=FFFFFF&VPM4401=FFFF00&VPM4412=008000&VPM4411=FF0000&VPM4422=FFFFFF&VPM4421=FFFFFF&VPM4322=FFFF00&CPMV001_1_Ico=112&CPMV001_1_1=AHORRE 15%&CPMV001_1_2=ADHIERASE AUPASS&CPMV001_1_3=AUPASS.COM.AR&CPMV002_1_Ico=0&CPMV002_1_1=ATENCION&CPMV002_1_2=RADARES&CPMV002_1_3=OPERANDO&CPMV003_1_Ico=0&CPMV003_1_1=ATENCION&CPMV003_1_2=RADARES&CPMV003_1_3=OPERANDO&CPMV004_1_Ico=255&CPMV004_1_1= &CPMV004_1_2=&CPMV004_1_3=&CPMV05 _1_Ico=0&CPMV05 _1_1=ATENCION&CPMV05 _1_2=RADARES&CPMV05 _1_3=OPERANDO&CPMV006_1_Ico=0&CPMV006_1_1=ATENCION&CPMV006_1_2=RADARES&CPMV006_1_3=OPERANDO&CPMV007_1_Ico=0&CPMV007_1_1=ATENCION&CPMV007_1_2=RADARES&CPMV007_1_3=OPERANDO&CPMV08 _1_Ico=0&CPMV08 _1_1=ATENCION&CPMV08
密码

#!/bash/perl .T
use strict;
use warnings;
use LWP::Simple;

my $file = "http://www.ausa.com.ar/autopista/carteleria/plano/mime.txt";
my $mime = get($file);

my @new;

foreach my $line ($mime) {
    $line =~ s/&/ /g;
    push(@new, $line);
}
print "$new[0]\n";
尝试这种方式,但当我启动数组时,数组等于(全部)

我需要的输出

print "$new[1]\n";
VPM4381=FFFFFF

您不想在
&
上替换,而是想在
&
上替换

@new = split /&/, $line;

您不想在
&
上替换,而是想在
&
上替换

@new = split /&/, $line;

抱歉,您的解释不清楚,并且您没有演示问题。首先显示一个示例输入以及您希望从该输入中获得的输出。该文件中有空格,由一行组成。因此,您的程序是正确的,输入是不正确的。当我删除字符I打开空格以保存在数组中时,然后启动0元素,但将所有内容一起显示。您使用
unshift
而不是
push
的具体原因是什么?你这样改变了你的价值观。最后一个元素将以
@new
中的第一个元素结尾。提示错误,实际上是推送!!:对不起,但是你的解释不清楚,而且你没有证明问题所在。首先显示一个示例输入以及您希望从该输入中获得的输出。该文件中有空格,由一行组成。因此,您的程序是正确的,输入是不正确的。当我删除字符I打开空格以保存在数组中时,然后启动0元素,但将所有内容一起显示。您使用
unshift
而不是
push
的具体原因是什么?你这样改变了你的价值观。最后一个元素将以
@new
中的第一个元素结尾。提示错误,实际上是推送!!:DStill,第一个元素是
'
,因此您可能想去
unshift@new,grep{$\ne'}split(/&/,$line)'
,所以你可能想去
unshift@new,grep{$\ne'}split(/&/,$line)来摆脱它。