adres strippen na int

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior, Medior and Junior SAP HANA Developer

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Veldhoven Vacature ID: 12696 Introductie Our client is the world's leading provider of lithography systems for the semiconductor industry, manufacturing complex machines that are critical to the production of integrated circuits or chips. Our purpose is “unlocking the potential of people and society by pushing technology to new limits”. We do this guided by the principles “Challenge”, “Collaborate” and “Care”. Wat verwachten we van jou? SAP Certified Application Associate - SAP HANA Cloud Modeling (training and/or certification) Bachelor degree or higher Excellent understanding of SAP HANA (2.0 / Cloud), Data Modelling and writing

Bekijk vacature »

Shamrock Modelbouw

Shamrock Modelbouw

30/08/2014 12:57:18
Quote Anchor link
Hallo,

Ik moet van een mysql tabel een script maken zodat de data in een ander formaat in een nieuwe tabel ingevoerd kan worden.

De oude tabel heeft een veld adres (straat + huisnummer), de nieuwe tabel heeft dit gesplitst).

Hoe kan ik het beste van:

Quote:
Adres = Stationstraat 15B


Quote:
Straat = Stationstraat
Huisnummer = 15B



Het probleem is alleen dat er natuurlijk ook straten zijn met meerdere namen, huisnummers met of zonder letters...

Mijn idee was om alles als huisnummer te pakken na het eerste cijfer (denk niet dat er straatnamen zijn met cijfers in).

Hoe kan ik dit het beste doen?

Alvast bedankt!
 
PHP hulp

PHP hulp

23/11/2024 13:53:56
 
Daan Slagter

Daan Slagter

30/08/2014 13:29:20
Quote Anchor link
Ik ben nog maar een beginner maar dit werkt wel.
Misschien kan het eenvoudiger???

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
$straatnaam
= "Stationstraat 15B";

$asplit = str_split($straatnaam);
$numeric = false;
$straat = "";
$nummer = "";

for($x = 0; $x < count($asplit); $x++){
    //Kijk wanneer de eerste waarde een getal is
    if(is_numeric($asplit[$x])){
        $numeric = true;
    }

    
    //Is het een getal of niet
    if($numeric == false){
        $straat = $straat . $asplit[$x];
    }

    else{
        $nummer = $nummer . $asplit[$x];
    }

    // $straat is de straat naam
    // $nummer is het huisnummer

}
?>
 
Shamrock Modelbouw

Shamrock Modelbouw

30/08/2014 13:33:41
Quote Anchor link
Bedankt, dit is inderdaad een manier, waarom ik dit zelf niet bedacht heb is omdat ik elk adres per character moet strippen. Opgeteld moet ik ongeveer 85000 adressen controleren. Ik denk dat het dan redelijk lang gaat duren.

Zelf had ik dit al gevonden, alleen pakt hij dan de cijfers als huisnummer en laat hij de letters erachter weg:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?PHP
$string
= "Stationstraat 15B";
preg_match_all('/^([^\d]+)(\d+)/', $string, $match);

$text = $match[1][0];
$num = $match[2][0];
?>
 
Ward van der Put
Moderator

Ward van der Put

30/08/2014 13:51:34
Quote Anchor link
Eindhoven heeft een 18 septemberplein en Amsterdam een Plein '40-'45...
 
Shamrock Modelbouw

Shamrock Modelbouw

30/08/2014 14:06:30
Quote Anchor link
Hmm, dat gaat dan ook niet werken, iemand een idee hoe ik dit kan oplossen? Eventueel kan ik controleren of er met een int begonnen wordt, plein 40-45 wordt lastiger
 
Frank Nietbelangrijk

Frank Nietbelangrijk

30/08/2014 14:10:37
Quote Anchor link
Gewoon het huisnummer apart laten ingeven in een form. eventueel als het huisnummer overeenkomt met de laatste letters van het adres dan nog aanpassen (bij dubbele invoer dus).

Maar eigenlijk kies je of voor het invoeren van een adres waarbij je de gebruiker vrij laat om zijn haar adres te noteren zoals je dat wilt. Meestal hou je daar twee inputs voor beschikbaar. Paypal doet dit bijvoorbeeld.

In het andere geval spreek je helemaal niet over adres maar doe je alles apart: naam, straatnaam, huisnr, postcode, stad, land...
 
Ward van der Put
Moderator

Ward van der Put

30/08/2014 14:16:04
Quote Anchor link
Moet "huisnummer" 15B niet nog worden gesplitst in huisnummer 15 en huisnummertoevoeging B? Zo doet PostNL dat bijvoorbeeld.

Je kunt overwegen het semi-automatisch te doen: zet alleen alle string + spatie + nummer automatisch over en doe de rest handmatig.
 
Shamrock Modelbouw

Shamrock Modelbouw

30/08/2014 14:19:44
Quote Anchor link
Het probleem is dat ik met 2 systemen moet werken, 1 (mijn gemaakte site) maakt gebruik van aparte velden (straat & huisnummer), het computer systeem werkt met 1 veld (adres). De adressen die in de computer staan (85000+) moeten al omgezet worden naar de site database. Daarnaast wordt het computer systeem (niet door mij gemaakt) nog niet aangepast dus alle acties vanuit de computer naar de database moeten via mijn script gaan.

15B mag gewoon in 1 veld. Hier wordt - behalve bestellingen naartoe verzonden - verder niets mee gedaan.

Ik kan het semi-automatisch maken. Hoop alleen dat van de 85000+ adressen niet nog een hele hoop overblijven die handmatig gedaan moeten worden dan.
 
Willem vp

Willem vp

30/08/2014 14:31:30
Quote Anchor link
> denk niet dat er straatnamen zijn met cijfers in

Aannames zijn dodelijk. In Lelystad zijn er hele wijken met genummerde straten (zoals Kamp 11 t/m Kamp 43, waardoor je huisnummers krijgt als Kamp 15-78). Ook in Wijchen, Zevenaar en Nijmegen komt dit voor.

Ik vrees dat er niet echt een eenvoudige manier is om het oude adresveld te splitsen.
Als je de postcode hebt, zou je kunnen opzoeken welke straatnaam daarbij hoort en op basis daarvan kunnen bepalen wat het huisnummer is. Maar owee als er dan tikfouten of alternatieve schrijfwijzen in je invoer zitten... ;-)
 
Shamrock Modelbouw

Shamrock Modelbouw

30/08/2014 16:34:25
Quote Anchor link
Hmm ok, dan toch nog moeilijker dan ik in eerste instantie hoopte. Ik ga eens wat proberen
 
Frank Nietbelangrijk

Frank Nietbelangrijk

30/08/2014 16:49:58
Quote Anchor link
Shamrock Modelbouw op 30/08/2014 16:34:25:
Hmm ok, dan toch nog moeilijker dan ik in eerste instantie hoopte. Ik ga eens wat proberen


Of je maakt het te moeilijk.
 
Tobias Tobias

Tobias Tobias

30/08/2014 17:19:56
Quote Anchor link
Het enige wat ik kan bedenken is de string in stukken knippen op spaties. Het laatste stuk is dan het huisnummer, en alle stukken ervoor (of 1 stuk) kun je aan elkaar plakken tot straatnaam.
Werkt natuurlijk alleen als bij een toevoegsel geen spatie is gebruikt, zoals 15 B ipv 15B
 
Frank Nietbelangrijk

Frank Nietbelangrijk

30/08/2014 19:08:06
Quote Anchor link
Tobias Tobias op 30/08/2014 17:19:56:
Werkt natuurlijk alleen als bij een toevoegsel geen spatie is gebruikt, zoals 15 B ipv 15B


En daar gaat het fout. Ik vraag me weleens af waarom die dwang aanwezig is om alles dat een gebruiker intypt maar te kunnen verifiëren en controleren? Als het om adressen gaat dan is er zo een grote legio aan mogelijkheden dat ik zeg: vertrouw op de bereidwilligheid van een serieuze gebruiker dat hij/zij zijn/haar adres zo goed en volledig mogelijk invoert. Waarom moet je de huisnummers apart hebben? als het PUUR voor de Nederlandse markt is en je wilt een huisnummer en postcode validatie dan kan ik me er nog iets bij voorstellen maar je gaat al nat als iemand in België woont. Denk eens aan campings met staanplaatsen of Huizen die als kamerverhuur ingericht zijn. Je kunt het niet bedenken of het bestaat. Laat het met rust. Laat de gebruiker vooral zijn of haar adres invullen zoals hij of zij denkt dat het goed is!
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

30/08/2014 20:40:57
Quote Anchor link
Quote:
En daar gaat het fout. Ik vraag me weleens af waarom die dwang aanwezig is om alles dat een gebruiker intypt maar te kunnen verifiëren en controleren?

Heb je weleens te maken gehad met het aanmaken van verzendingen via een API van een vervoerder?
Waarschijnlijk niet anders had je dit jezelf niet afgevraagd.
 
Frank Nietbelangrijk

Frank Nietbelangrijk

30/08/2014 21:45:07
Quote Anchor link
Ger van Steenderen op 30/08/2014 20:40:57:
Quote:
En daar gaat het fout. Ik vraag me weleens af waarom die dwang aanwezig is om alles dat een gebruiker intypt maar te kunnen verifiëren en controleren?

Heb je weleens te maken gehad met het aanmaken van verzendingen via een API van een vervoerder?
Waarschijnlijk niet anders had je dit jezelf niet afgevraagd.


Ja Ger, in welk deel van de wereld of welk land? en dan nog, gewoon gescheiden laten invoeren door de gebruiker dus..
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

30/08/2014 21:53:49
Quote Anchor link
Maar dat is niet gebeurd, en daar gaat de vraag over .....
 
Shamrock Modelbouw

Shamrock Modelbouw

06/09/2014 11:37:15
Quote Anchor link
idd, de site gebruikt aparte velden, de oude database (die overgezet moet worden naar de site) niet. Ik kan hier verder niets aan veranderen...

Iemand toch nog een idee hoe ik dit goed kan omzetten? Of toch maar met een minder secure manier oplossen en hopen op weinig fouten?

Bedankt!
 
Henk de Vriep

Henk de Vriep

06/09/2014 12:14:55
Quote Anchor link
Je kunt altijd de postcode.nl API gebruiken. Hiervoor heb je wel een KVK nummer en dergelijke nodig. Je kunt hiermee via een cURL of jQuery een request doen naar hun server en de postcode en huisnummer+toevoeging controleren.
 
Shamrock Modelbouw

Shamrock Modelbouw

06/09/2014 12:32:36
Quote Anchor link
Het gaat om adressen uit verschillende landen (NL, BE, FR, EN, DE etc...)

Maar ik denk dat ik het wel omgezet krijg, bedankt voor alle hulp!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.