이 질문은 PHP에 대해 here 및 here과 같은 질문을 받았으며 Perl과 동일한 질문이 있습니다. 목록을 반환하는 함수가 주어지면 임시 변수를 사용하지 않고 즉시 색인을 생성하는 방법 (또는 가장 좋은 방법)이 있습니까? 예를 들어Perl에서 반환 된 배열에 직접 인덱싱
:
my $comma_separated = "a,b,c";
my $a = split (/,/, $comma_separated)[0]; #not valid syntax
두 번째 줄의 구문이 무효 인 이유를 내가 볼, 그래서 같은 효과를 얻을 수있는 방법이 있다면 내가 먼저 목록에 반환 값을 할당하지 않고 궁금하네요 및 그것에서 색인 생성. 그냥 당신이 할 수있는 것처럼
my $a = (split /,/, $comma_separated)[0];
간단했습니다. --- 감사합니다. – Carl
대부분의 경우 괄호는 함수 호출에서 선택 사항이므로 보통 'my $ x = (split /,/= $ str) [0]' –
@ Carl로 생각할 수 있습니다. 'split (...) '의 경우 괄호는이 인수로 split을 호출하려는 * call * -> 주소만을 처리합니다. '[0]'을 그 위에 집어 넣는 것은 거의 의미가 없습니다. 그러나'(split ...)'는 * returned * 값을 처리합니다. 이것은 정말로 당신이 색인하고자하는 값입니다. – Axeman