Alex
When at first I tried, perl bombed out with this error:
root@nadia->perl extractor
syntax error at extractor line 13, near "| |"
Execution of extractor aborted due to compilation errors.
So, in checking, it appeared that the pipe signs were separated by a space, so I removed the space and tried again. This time it bombed with this error:
Use of uninitialized value at extractor line 18, <IN> chunk 1.
Use of uninitialized value at extractor line 18, <IN> chunk 1.
Use of uninitialized value at extractor line 18, <IN> chunk 2.
Use of uninitialized value at extractor line 18, <IN> chunk 2.
Use of uninitialized value at extractor line 18, <IN> chunk 2.
Use of uninitialized value at extractor line 18, <IN> chunk 2.
Use of uninitialized value at extractor line 18, <IN> chunk 2.
Use of uninitialized value at extractor line 18, <IN> chunk 2.
Use of uninitialized value at extractor line 18, <IN> chunk 2.
Use of uninitialized value at extractor line 18, <IN> chunk 3.
Use of uninitialized value at extractor line 18, <IN> chunk 4.
Use of uninitialized value at extractor line 18, <IN> chunk 4.
Use of uninitialized value at extractor line 18, <IN> chunk 4.
Use of uninitialized value at extractor line 18, <IN> chunk 4.
Use of uninitialized value at extractor line 18, <IN> chunk 5.
Use of uninitialized value at extractor line 18, <IN> chunk 5.
Use of uninitialized value at extractor line 18, <IN> chunk 5.
Use of uninitialized value at extractor line 18, <IN> chunk 5.
Use of uninitialized value at extractor line 18, <IN> chunk 5.
Use of uninitialized value at extractor line 18, <IN> chunk 5.
Use of uninitialized value at extractor line 18, <IN> chunk 5.
Use of uninitialized value at extractor line 18, <IN> chunk 5.
Use of uninitialized value at extractor line 18, <IN> chunk 5.
Line 18 is this one:
$line = "$count|$name|$email|$url|$addr|$employ|$occup|$comment|$visit|$time";
It looks to me like these are all defined.
Here is exactly how extractor looks now:
#!/usr/local/bin/perl -w
open (IN, "<data.txt") or die $!;
open (OUT, ">out.db") or die $!;
$/ = "\n\n"; # Get data by paragraphs.
while (<IN> ) {
$data = $_;
$count++;
$data =~ s/\n//g;
($name) = $data =~ m,<H3><FONT COLOR=BLUE><A NAME=.+?>(.+?)</font></H3>,m;
($email) = $data =~ m,E-mail address: <<a HRef="mailto
.+?)">,m;
($url) = $data =~ m,Home Page Address:<a HRef="(.+?)">,m;
($addr) = $data =~ m,Address:<b>(.+?)</b><BR>,m;
$addr | | (($addr) = $data =~ m,No Street address given:<b>(.+?)</b><BR>,m);
($employ) = $data =~ m,Employer:<b>(.+?)</b><br>,m;
($occup) = $data =~ m,Occupation:<b>(.+?)</b><br>,m;
($comment) = $data =~ m,Comments:<b>(.+?)</b><br>,m;
($visit, $time) = $data =~ m,Visited here via the (.+?) on: (.+?)\s*<HR>,m;
$line = "$count|$name|$email|$url|$addr|$employ|$occup|$comment|$visit|$time";
$line =~ s/\n/``/g;
print OUT $line, "\n";
}
close IN;
close OUT;
Thanks for all the help!!!
Jamie