1
TokeParser를 실행할 때마다이 정의되지 않은 오류가 발생합니다. 그것이 HTML에서 가져 오는 마지막 것은 'undef'가 오류를 일으키는 것이기 때문에 그것이라고 생각합니다. 그러나 그것이 맞다면, 또는 그것이 무엇인지에 대해서 확신합니다.정의되지 않은 값에서 메서드 "get_token"을 호출 할 수 없습니다.
#!usr/bin/perl
use warnings;
use strict;
use HTML::TokeParser;
sub findTokens {
my $htmlFileName = "83.html";
my $p = HTML::TokeParser->new($htmlFileName);
my @tokens;
while (my $newChunk = $p->get_token) {
if ($newChunk->[0] eq 'T') {
my @lineArray = split(' ', $newChunk->[1]);
foreach my $i (@lineArray) {
if (lc($i) =~ /^[a-z]*\-?'?s?$/) {
push(@tokens, lc($i));
}
}
}
}
return @tokens;
}
파일 구문 분석이 끝날 때 오류라고 생각했지만 그게 전부입니다. 그 중 하나는 시간을 보냈으며 두 번째 눈을 필요로했습니다. 고맙습니다 !! – user992622
'get_token'은'$ p'에서 호출되고'$ p'는 절대로 변하지 않습니다. 그러므로'$ p-> get_token'이 처음으로 평가되어야합니다. – ikegami