x

Overpass-Turbo - kleiner / gleich / größer


  1. Overpass-Turbo - kleiner / gleich / größer · Lübeck (Gast) · 02.10.2013 12:55 · [flux]

    hi !

    muss mal eben eine Abfrage bauen um alles zu finden wo Name < 1000 ist. Querdenker werden schon richtig auf die Kleingärten tippen.

    Leider komme ich aktuell nicht in das wiki - kann mir einer weiterhelfen wie das geht? z.b. auf Basis von http://overpass-turbo.eu/s/1ac

    {{key=allotments}}
    {{value=garden}}
    <osm-script␣output="json">
    <union>
    <query␣type="node">
    <has-kv␣k="{{key}}"␣v="{{value}}"/>
    <!--␣NAME␣<␣1000␣-->
    <bbox-query␣{{bbox}}/>
    </query>
    <query␣type="way">
    <has-kv␣k="{{key}}"␣v="{{value}}"/>
    <!--␣NAME␣<␣1000␣-->
    <bbox-query␣{{bbox}}/>
    </query>
    </union>
    <print␣mode="body"/>
    <recurse␣type="down"/>
    <print␣mode="skeleton"/>
    </osm-script>
    

    Das nicht alle Wert richtig liegen (die von - bis) ist mir schon bewußt !

    Gruß Jan :-)


    • Re: Overpass-Turbo - kleiner / gleich / größer · rayquaza (Gast) · 02.10.2013 13:11 · [flux]

      Mit

      <has-kv␣k="name"␣regv="{{regexp}}"/>
      

      kann man einen Regülären Ausdruck nutzen, bei dem du dann einfach einen für eine dreistellige Zahl nehmen kannst (dazu siehe Wikipedia).


    • Re: Overpass-Turbo - kleiner / gleich / größer · Lübeck (Gast) · 02.10.2013 13:43 · [flux]

      hi !

      wenn ich mir das im Wiki durchlese und vorab

      {n} Der voranstehende Ausdruck muss exakt n-mal vorkommen.

      {{regexp=[0-9]{3}}}
      

      ergänze - im ganzen dann:

      ...
      <query␣type="node">
      <has-kv␣k="{{key}}"␣v="{{value}}"/>
      <has-kv␣k="name"␣regv="{{regexp}}"/>
      <bbox-query␣{{bbox}}/>
      </query>
      ...
      

      dann bekomme ich eine Fehlermeldung - vermutlich wegen der 3-fach } !

      Kann mir einer weiterhelfen ? Regex ist auch nicht so meine Stärke.

      Gruß jan :-)


    • Re: Overpass-Turbo - kleiner / gleich / größer · couchmapper (Gast) · 02.10.2013 14:17 · [flux]

      Das sollte klappen:

      <has-kv␣k="name"␣regv="^[0-9]{3}$"/>
      

    • Re: Overpass-Turbo - kleiner / gleich / größer · Lübeck (Gast) · 02.10.2013 14:33 · [flux]

      +10


    • Re: Overpass-Turbo - kleiner / gleich / größer · streckenkundler (Gast) · 02.10.2013 15:12 · [flux]

      Wenn ich das richtig sehe, liefert das Ergebnis aber zunächt nur die rein nummerischen Werte.
      Parzellenbezeichnungen wie "650a" oder "650+651" oder ähnliches werden nicht abgefragt...

      weist Sven darauf hin.


    • Re: Overpass-Turbo - kleiner / gleich / größer · Lübeck (Gast) · 02.10.2013 15:15 · [flux]

      hi !

      Das nicht alle Wert richtig liegen (die von - bis) ist mir schon bewußt !

      sollte das schon mit einschließen !

      Gruß Jan :-)


    • Re: Overpass-Turbo - kleiner / gleich / größer · slhh (Gast) · 03.10.2013 00:09 · [flux]

      couchmapper wrote:

      Das sollte klappen:

      <has-kv␣k="name"␣regv="^[0-9]{3}$"/>
      

      Da fehlen dann aber doch die ein und zweistelligen Nummern. Daher wohl besser:

      <has-kv␣k="name"␣regv="^[0-9]{1,3}$"/>
      

    • Re: Overpass-Turbo - kleiner / gleich / größer · couchmapper (Gast) · 03.10.2013 08:56 · [flux]

      Richtig angemerkt. Möchte man auch Wertebereiche (577-578) und Buchstaben am Ende (650b) berücksichtigen:

      ␣␣␣␣␣<has-kv␣k="name"␣regv="^([0-9]{1,3}[a-z]*)(-[0-9]{1,3}[a-z]*)?$"/>
      

    • Re: Overpass-Turbo - kleiner / gleich / größer · Lübeck (Gast) · 03.10.2013 12:18 · [flux]

      Tolle Beispiele - ab ins wiki damit!

      Jan


    • Re: Overpass-Turbo - kleiner / gleich / größer · Abendstund (Gast) · 17.11.2015 16:56 · [flux]

      Ich häng mich ran:

      Vorausgeschickt: Ich hab' noch nie groß mit RegEx was gemacht und bin direkt zurückgeschreckt. Die Abfrage oben sieht mir als Laie sehr nach Check auf die Stelligkeit von Werten aus, richtig?

      Ich will mit Overpass Turbo alle Polygone holen, die in einem bestimmten Key "<= [x]" als Wert haben. Beispiel: Geschosszahlen von Gebäuden (building:levels). Das kann dann auch mal 11 sein. Wie geht man da möglichst simpel ran?


    • Re: Overpass-Turbo - kleiner / gleich / größer · MKnight (Gast) · 25.02.2016 16:49 · [flux]

      Ich weiss nich, ob ich hier richtig bin, aber das kommt dem schon nahe, wenn ich das richtig verstehe.
      Ich suche Werte, die eine bestimmte Zahl an einer unbestimmten Stelle enthalten, Beispiel:
      Mittels:

      -01:00;
      

      möchte ich Nodes oder ways dieser Art:

      opening_hours=Mo-Th␣17:00-01:00;␣Fr-Su␣17:00-04:00
      

      finden.
      Optimal wäre, wenn die Abfrage dahingehend so flexibel ist, dass sie von 00:01 bis 06:00, also alles "kurz" nach Mitternacht findet.

      Hintergrund der Abfrage ist, dass das Beispieltagging falsch ist, da hinter dem Semikolon eine Stunde vom Donnerstag abgeschnitten wird, da gehört richtigerweise ein Komma hin. Habe in einem kleinen Bereich mit stumpfen old-style-ablesen 3 Fehler der Art gefunden, grössere Bereiche ohne Maschine abgrasen wäre recht stumpfsinnig 😉


    • Re: Overpass-Turbo - kleiner / gleich / größer · Jo Cassel (Gast) · 25.02.2016 21:51 · [flux]

      Hilft Dir das weiter:
      http://overpass-turbo.eu/s/eD6

      und Gruß


    • Re: Overpass-Turbo - kleiner / gleich / größer · mueschel (Gast) · 25.02.2016 22:11 · [flux]

      Da wirst du auf reguläre Ausdrücke zurückgreifen müssen:
      http://overpass-turbo.eu/s/eD9

      node[opening_hours~"-0?[1-6]:[0-5][0-9]"]({{bbox}});
      node[opening_hours~"-0?0:[^0][^0]"]({{bbox}});
      

      Erst einmal alles mit einer Endzeit zwischen 1 und 6. und in der zweiten Zeile noch zusätzlich alles mit 00: außer 00:00.
      Die Stunden erlauben auch eine einstellige Angabe, da die zweite Ziffer doch recht häufig vergessen wird.


    • Re: Overpass-Turbo - kleiner / gleich / größer · MKnight (Gast) · 25.02.2016 22:33 · [flux]

      Danke euch Beiden. Mueschel: gleich mehrere echte Fehler gefunden, grossartig, werde das morgen ma abarbeiten und schauen ob ich da noch paar Extrawünsche finde. So ist das scheinbar erstmal gut.

      Edit: @Jo Cassel auch sehr hilfreich, auch wenn's nur 1:00 matcht


    • Re: Overpass-Turbo - kleiner / gleich / größer · mueschel (Gast) · 25.02.2016 22:38 · [flux]

      Eine kleine Korrektur muss ich noch nachreichen - zwischen dem Bindestrich und Uhrzeit darf natürlich auch ein Leerzeichen sein:
      http://overpass-turbo.eu/s/eDb


    • Re: Overpass-Turbo - kleiner / gleich / größer · MKnight (Gast) · 25.02.2016 22:42 · [flux]

      mueschel wrote:

      Eine kleine Korrektur muss ich noch nachreichen - zwischen dem Bindestrich und Uhrzeit darf natürlich auch ein Leerzeichen sein:
      http://overpass-turbo.eu/s/eDb

      Blöd, hatte das beim Schreiben der Anfrage aufm Schirm und dann vergessen, drauf hinzuweisen. schön dass Du es selbst gemerkt hast. (Anderererseits gibts "Fehler" dieser Art (zumindest in .de) nur welche die weniger als 2 Wochen alt sind)


    • Re: Overpass-Turbo - kleiner / gleich / größer · MKnight (Gast) · 26.02.2016 11:04 · [flux]

      In der Abfrage fehlte noch das Semikolon und node war doppelt.
      Aktuelle zusätzlich auf boundary angepasste Version: http://overpass-turbo.eu/s/eDw
      In Thüringen hab ich 32 Pois gefunden, scheint mir vom Gefühl her etwas wenig, aber kann auch hinkommen. Schaue mir jetzt mal den Rest von .de an...