45 |
$v =~ s{^\s+}{}; |
$v =~ s{^\s+}{}; |
46 |
$v =~ s{\s+$}{}; |
$v =~ s{\s+$}{}; |
47 |
|
|
48 |
if ( $v =~ m{#} ) { |
# fix tel fields |
49 |
my @v = split(/\s*#\s*/, $v); |
$v =~ s{\s+}{#}g if $n =~ m{tel}; |
50 |
|
$v =~ s[\x{17d}][F] if $n =~ m{spol}; |
51 |
|
|
52 |
|
if ( $v =~ m{#} ) { # subfields delimiter in CSV data |
53 |
|
my @v = split(/\s*#+\s*/, $v); |
54 |
foreach my $pos ( 0 .. $#v ) { |
foreach my $pos ( 0 .. $#v ) { |
55 |
|
if ( $n =~ m{tel} ) { |
56 |
|
if ( $v[$pos] =~ m{^09} ) { |
57 |
|
$hash->{ $n . '_mobile' } ||= $v[$pos]; |
58 |
|
} else { |
59 |
|
$hash->{ $n . '_fixed' } ||= $v[$pos]; |
60 |
|
} |
61 |
|
} |
62 |
$hash->{ $n . '_' . $pos } = $v[$pos]; |
$hash->{ $n . '_' . $pos } = $v[$pos]; |
|
$hash->{ $n . '_mobitel' } = $v[$pos] if $n =~ m{tel} && $v[$pos] =~ m{^09}; |
|
63 |
} |
} |
64 |
|
|
65 |
|
$hash->{ $n } = [ @v ]; |
66 |
|
} else { |
67 |
|
$hash->{ $n } = $v; |
68 |
} |
} |
|
$hash->{ $n } = $v; |
|
69 |
} |
} |
70 |
|
|
71 |
warn dump( $hash ) if $debug; |
warn dump( $hash ) if $debug; |