Jeg er veldig nybegynner med overpass. Jeg trenger å få alle mulige husnummer i området med gitt zip og en del av gaten.

For eksempel. Alle hus for: 10178 alex

Resultatet skal være eller lik:

Alex-Wedding-Straße, 10178 Berlin Tunnel Alexanderplatz, 10178 Berlin Alexanderplatz, 10178 Berlin Alexanderplatz 1, 10178 Berlin Kleine Alexanderstraße 1, 10178 Berlin Alexanderstraße 1, 10178 Berlin Alexanderplatz 2, 10178 Berlin 

Jeg prøvde neste spørsmål, men det ga ingen resultater.

area[postal_code=10178][boundary=postal_code]->.a; way(area.a)["highway"~"^(primary|secondary|tertiary|residential|living_street)$"]["name"~"^alex.*"]->.street; ( node["addr:housenumber"](area.street); way["addr:housenumber"](area.street); relation["addr:housenumber"](area.street); ); (._;>;);out; 

Hva gjør jeg galt?

Kommentarer

  • Bare en gjetning: Overpass anser kanskje ikke en gate / vei som et gyldig område å søke i, eller i det minste ikke stort nok (bare en veldig tynn linje?). Du kan sannsynligvis filtrere etter husnummer og gatenavn node["addr:housenumber"]["addr.street"~~"^alex.*"], avhengig av OSM-dataene som ' er tilgjengelige
  • " med gitt postnummer og en del av gaten " – så du vil ha alle adresser som samsvarer med postnummeret ditt og gatenavnet?
  • @Mateusz Konieczny eksakt ly!
  • " vei (area.a) [" motorvei " " fungerte ikke som forventet ettersom gatene ikke har noe område. Det er " rundt ", men det vil også mislykkes, da det ville fange adresser til nærliggende gater eller ikke fange noen adresser langt unna.

Svar

Dette spørsmålet forutsetter at

  • du vil ha alle adresser som samsvarer med begge postnummeret ditt og spesifisert del av gatenavnet
  • ufølsomhet i store og små bokstaver foretrekkes (alex-filter skal også matche Alex, AleX osv.)
  • postnummer-tag er merket på område med grense = postnummer ( AFAIK ikke sant overalt)
  • adressen bruker addr: street og addr: housenumber tags
 area[postal_code=10178][boundary=postal_code]->.code; ( node["addr:housenumber"]["addr:street"~"alex",i](area.code); way["addr:housenumber"]["addr:street"~"alex",i](area.code); relation["addr:housenumber"]["addr:street"~"alex",i](area.code); ); (._;>;);out; 

Kommentarer

  • Jeg prøver å få noe lignende til å fungere på amerikanske gater, men det ser ikke ut ', har du et eksempel?
  • @MichaelLWatson Vennligst lenke til et nytt spørsmål som viser hva som ikke fungerer og hva du prøvde.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *