특정 태그의 발생을 계산하기 위해 XML :: Simple을 사용하여 XML 파일을 구문 분석하려고합니다 (즉, 제목과 관련된 다른 도시 위치의 발생 그는 생성 된 번호에 대한 자세한 분석을 수행하기 위해 파일에서 반복됩니다 예를 들면 다음과 같습니다.XML :: Simple을 사용하여 태그 발생을 계산할 XML 파일 구문 분석
<XML>
<title> Teacher </title>
<state> TX </state>
<city> Dallas </city>
<title> Teacher </title>
<state> CA </state>
<city> Los Angeles </city>
<title> Engineer </title>
<state> NY </state>
<city> Manhattan </city>
<title> Engineer </title>
<state> NY </state>
<city> Manhattan </city>
</XML>
은 어떻게 든 타이틀이 발생 횟수 등 지역의 다양한 #
을 계산해야 교사 : 2 도시 : 2
엔지니어 : 2 개 도시 : 1
내가 가진 무엇 :이 슈퍼 기본이고 정말 아무것도 생산하지, 나는 완전히 잃은 초보자이기 때문에 그것이 알고
#!/usr/bin/env perl
use XML::Simple;
use Data::Dumper;
# initialize variables
my $counter = 0;
my @titlelist =();
my @citylist =();
# create object
$xml = new XML::Simple;
# read XML file
my $jobs = $xml->XMLin("sample.xml");
print Dumper($jobs);
foreach my $titles(@{$jobs->{job}}) {
push(@citylist, $titles->{city});
push(@titlelist, $titles->{title});
}
print "@titlelist\n";
print "@citylist\n";
이것을 논리적으로 접근하는 방법에 관해서. 나는 이런 종류의 출력을 얻기 위해 사용해야하는 구조를 이해하는 데 정말로 도움이 필요하며, 올바른 방향으로 모든 포인터를 이해할 수 있습니다. 기본적으로 결과를 배열로 푸시하는 것입니다. 문자열 비교를 수행하고 해당 도시 및 제목 카운터를 기반으로해야합니까? 이를 위해 다차원 배열이 필요합니까? 어떤 아이디어라도 도움이 될 것입니다 ... 감사합니다!