1Danke
ERLEDIGT
NEIN
NEIN
ANTWORTEN
8
8
ZUGRIFFE
813
813
EMPFEHLEN
-
Moin,
ich muss aus einem Adress-String, der aus Straße und Hausnummer besteht, die Hausnummer herausfiltern. Nach Möglichkeit in allen möglichen (internationalen) Formaten. Natürlich unter Berücksichtigung von Hausnummern wie "41a" oder "62b" etc.. Hat da evtl. jemand Erfahrungswerte, wie man das am Besten angeht? All meine Suchen sind bisher nie auf nennenswerte Resultate gestoßen.
Wäre für jeden Ansatz sehr dankbar!
-
Falls sich das vermeiden lässt, dann lass es. Es gibt zu viele unterschiedliche Formate, als dass es eine effektive Lösung dafür gibt.
Markus Wulftange
-
Wenn es sich vermeiden ließe, würde ich eine solche Frage nicht stellen.
Vielleicht kennt ja jemand eine Art Adress-Validator oder sowas ähnliches. UPS bietet sowas an, aber soweit ich das verstanden habe, nur für US Adressen.
Ich bin mir über die unterschiedlichen Varianten im Klaren. Nur bevor ich anfange mir einen eigenen Filter für die verschiedenen Formate zu basteln, ist es klüger, vorher um Erfahrungswerte zu Fragen.
-
Wenn du glück hast (und auch nur wenn du Glück hast) dann hat jedes Land seinen eigenen Standard. Dann musst du nur 192 Länder (oder so viel gibts doch weltweit?) nachschauen wie die Adressen aufgebaut sind.
Ergo Stundenlange Recherche
Wenn du aber Pech hast hast du Stundenlang gesucht und am Ende ist es doch unmöglich....
Ne ernsthaft: Vergiss es jedenfalls nicht international.
-
Sollte jeder Datensatz das dazugehörige Land oder andere, verwertbare Informationen enthalten, halte ich es für machbar - andernfalls schließe ich mich meinen Vorrednern an.
Es ist halt nur etwas Aufwand, die ganzen Formate den Ländern zuzuweisen und die Ausnahmen auszutüffteln.
http://www.addressdoctor.com/de/prod...essformats.asp
-
Die Information des Landes hab ich. Wohlmöglich gehöre ich dafür geschlagen: ich hab vergessen zu erwähnen, dass ich die Daten über die GeoCoding-Api von Google-Maps abgreife. Die Daten werden auch richtig geparst, jedoch hab ich halt das o.g. Probleme mit der Hausnummer und der Straße.
Danke an DeluXe, auf der Seite war ich auch schon, jedoch war ich wohl schon total gefrustet von der ewigen Sucherei, dass ich über die Beispiele nicht gestolpert bin.
Ich werde mal schauen, was ich da machen kann. An sich ist es nur noch Fleißarbeit, wenn man die Formate alle kennt und davon ab müsste ich erstmal nur die Länder unterstützen, welche auch von der Google GeoCoding-Api unterstützt werden, dass sind nämlich nur 40.
-
25.07.09 12:08 #7
- Registriert seit
- Apr 2007
- Beiträge
- 127
Hallo,
auch wenn das Thema schon älter als ein Jahr zu sein scheint, passt es einigermasen auf meine Frage. Und zwar habe ich auch das Problem mit Straße und Hausnummer, die in einer Zeile stehen und ich die nun auseinander bekommen soll. Doch nicht international sondern nun Deutsche Adressen.
Also: Mozartstr. 44a oder Am Graben 5
Wollte ja erstmal die zahlen 0 bis 9 suchen lassen und dann an dieser stelle trennen lassen doch das wären dann 10mal strpos() und dann noch was zum teilen an einer gewissen stelle und dann trim()... Kann mir jemand da einen regulären Ausdruck geben?
Gruß
-
Hi,
versuch mal dies:
http://www.regex-tester.de/uc_697_de.htmlmfg
--------------------------------------------------------------------------------
Kein Support via PN, Email, ICQ, Brieftaube oder Flaschenpost!
Besucht den tutorials.de-Chat | Anleitung
RTFM - PHP-Handbuch - MySql Handbuch
--------------------------------------------------------------------------------
Surftipp...Der Postillon
--------------------------------------------------------------------------------
Signatur v2.2
-
25.07.09 19:05 #9
- Registriert seit
- Apr 2007
- Beiträge
- 127
Hi,
@Loomis
genau sowas leider noch nicht ganz perfekt. Wenn ich zum Beispiel
Am Graben 54b 2
eingebe, spuckt er alles in das erste Array Element. Kann man den Ausdruck soweit aendern, dass er im ersten Array Feld einfach den Text bis zur ersten Zahl drin hat und im zweiten einfach alles was da nach kommt?
Waere super wenn das gehen wuerde.
Beste Gruesse
Edit: endlich nach einer unendlichen zeitspanne hab ich es rausbekommen
loesung lautet: ([\d]+([\w]*[\s]*)*)
Geändert von 'GreenDragon' (25.07.09 um 19:51 Uhr)
Ähnliche Themen
-
GridView und Filterung
Von Razorhawk im Forum .NET Web und KommunikationAntworten: 1Letzter Beitrag: 15.06.10, 11:24 -
Filterung + Auflistung
Von ph612 im Forum PHPAntworten: 3Letzter Beitrag: 27.05.10, 16:54 -
Kinderschutz / Content-Filterung
Von Soapp im Forum Internet, DSL & FlatrateAntworten: 0Letzter Beitrag: 28.03.07, 19:29 -
Hausnummern - Min und Max
Von regiontop im Forum Relationale DatenbanksystemeAntworten: 7Letzter Beitrag: 11.08.06, 14:03 -
Filterung eines Arrays
Von Paula im Forum PHPAntworten: 4Letzter Beitrag: 19.04.06, 13:38





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren