7 use Data::Dump qw(dump);
14 open(my $fh, '<', 'TEKTAG.csv');
15 my $h = <$fh>; # header
18 my ( $idsl, $tag, $tagno, $id, $sfi, $sfino, $textkey, $textres ) = split(/,/,$_);
23 $id .= " " if length $id < 2;
24 $id .= " " if length $id < 2;
25 my ($i1, $i2) = split(//, $id, 2);
27 $sfi =~ s/^\$// || die "can't fix subfield [$sfi]";
29 my $text = $textkey . $textres; # FIXME fix CAPITAL letters in $textkey
30 $text =~ tr/^~]}\|[{@`/ČčĆćĐ𩹮ž/; # CROASCII (YUS|HRN) B1.002:1982
32 $data->{$idsl}->{$tag}->[ $tagno ]->[ 0 ] = $i1;
33 $data->{$idsl}->{$tag}->[ $tagno ]->[ 1 ] = $i2;
34 $data->{$idsl}->{$tag}->[ $tagno ]->[ ( $sfino * 2 ) + 2 ] = $sfi;
35 $data->{$idsl}->{$tag}->[ $tagno ]->[ ( $sfino * 2 ) + 3 ] = $text;
37 # last if $lines++ > 5000;