2017-07-19 14 views
0

私は角括弧で囲まれ、コンマで区切られたいくつかの値の配列を持っており、角括弧とコンマを削除してその配列から値を求めます。例えば。perlサブストリングを使用して配列から値を取り出す方法

[3,5,6,1,7,9,2,8] 

マイコード:

my $li=[1,2,3,4,5,6,7,8,9]; 
my $l=substr($li,1,length($li)-2); 
my @ar=split(",",$l); 
my $a; 
foreach $a (@ar) 
{ print/n$a; } 

私はperlでsubstrを使用して3 5 6 7 1 9 2 8として値を取得したいです。 私はこれのためのコードを持っていますが、それは少し複雑であることを理解できません。

+3

は、なぜあなたは、このために 'substr'を使用するようにしたいですか?そして、私たちが見ることのできないコードを説明するためには、どのように期待していますか? – melpomene

+0

分割を使用できますか? https://perlmaven.com/perl-split – admcfajn

+1

my $ li = [1,2,3,4,5,6,7,8,9]; my $ l = substr($ li、1、length($ li)-2); my @ ar = split( "、"、$ l); my $ a; foreach $ a(@ar) { \t print/n $ a; } –

答えて

0

ただ、あなたはこれを試してみてください。

my $str = "[3,5,6,1,7,9,2,8]"; 

my @htm = map { $_=~s/(\[|\])//g; $_; } split /\,/, $str; 

print "Each item: $_\n" foreach(@htm); 
関連する問題