1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
for my $element (@data)
{
my ($lon,$lat) = $element->center();
print "id: ".$element->id()." - lon: ".$lon." - lat: ".$lat."\n";
print $fh_out " <node id='".($element->id())."' action='modify' visible='true' version='1' lat='".$lat."' lon='".$lon."'>\n";
# liegt überhaupt eine Info vor ?
if($element->has_tag('addr:housenumber'))
{
print "Wert: ".$element->tag('addr:housenumber')->value()."\n";
# aufsplitten der Informationen
my @tags = split(/\//,$element->tag('addr:housenumber')->value());
# print Dumper(@tags)."\n";
$tags[0] = lc($tags[0]);
#print Dumper \@tags;
if( $tags[0] =~ /^[0-9]{6}/ ){
....
}elsif ($tags[0] eq '' && $tags[1] =~ /^[0-9]{1,6}/){
....
}elsif( $tags[0] =~ /^bj.*/ ){
....
}elsif( $tags[0] eq 'hs' ){
....
}elsif( $tags[0] =~ /^b[0-9]{1-3}/ ){
# das müßte erkannt werden !
writeKV($fh_out,'amenity','bicycle_parking');
...
}elsif( $tags[0] =~ /^b[0-9]{1-3}/ ){
Quote{1-3} wird zu {-2}
1
2
3
4
5
6
7
# würde er rechnen, müsste der Regex /a{1}/ entsprechen und einen Match erzeugen
> perl -Mstrict -wE "my $re = qr{ a{3-2} }x; say 'Result: ', 'abc' =~ $re ? 'yes: ' : ' no: ' . $re "
Result: no: (?^ux: a{3-2} )
# test auf Literal
> perl -Mstrict -wE "my $re = qr{ a{3-2} }x; say 'Result: ', 'a{3-2}' =~ $re ? 'yes: ' : ' no: ', $re "
Result: yes: (?^ux: a{3-2} )