在perl中为数组内的所有元素添加引号

Zee*_*Zee 2 arrays perl

我正在尝试按照本教程学习我自己的代码,现在基本上将一个值读入一个标量,该标量被推入一个名为states的数组中.但是,它没有像教程中那样正确地散列函数,我相信它因为数组的内容没有被正确引用.

我试过了

foreach (@states)
{
      q($_);
} 
Run Code Online (Sandbox Code Playgroud)

push @states, q($key);
Run Code Online (Sandbox Code Playgroud)

但都没有产生必要的输出.目前我的输出显示为

NY, NJ, MI , NJ
Run Code Online (Sandbox Code Playgroud)

使用时

print join(", ", @states);
Run Code Online (Sandbox Code Playgroud)

我想要它显示

 'NY', 'NJ', 'MI' , 'NJ'
Run Code Online (Sandbox Code Playgroud)

cho*_*oba 8

获取状态,将它们映射到带引号的字符串,用逗号连接:

my @states = qw( NY NJ MI );
print join ', ', map "'$_'", @states;
Run Code Online (Sandbox Code Playgroud)

  • 但是在你的问题中,你会看到你有一个@states数组; 如果您不这样做,请修改您的问题. (3认同)