피트와 인치의 크기를 인치의 너비와 인치의 높이로 구분하는 열로 변환하는 .csv 파일에서 스크립트를 실행하려고합니다.
Strict 모드를 사용하지 않을 때는 잘 작동하지만가 use warnings;
설정 되면 경고 메시지를 반환합니다 .
내 문제는 여기에서 발생합니다.
if ($data[$index_num] =~ /(\d+)'( (\d+)'')? x (\d+)'( (\d+)'')?/) {
my $width = $1*12+$3;
my $height = $4*12+$6;
...
}
때로는 크기가 5 'x 8'일 수 있기 때문에 특수 변수 $ 3 및 $ 6이 존재하지 않습니다.
가능한 모든 크기 형식은 다음과 같습니다.
내가받는 경고는 다음과 같습니다.
script.pl 47 행, 567 행에 (+)와 함께 초기화되지 않은 값 $ 6 사용.
이것은 너비 또는 높이에서 인치가 누락 된 경우 3 또는 4에서 발생합니다.
사용하기 전에 $ 3 또는 $ 6가 있는지 어떻게 확인할 수 있습니까?
defined
기능 을 사용할 수 있습니다 .
my $height;
if(defined($6))
{
$height = $4*12+$6;
}
else
{
$height = $4*12;
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다