Regular Expressions adres formaten

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

C# .NET Software Ontwikkelaar

Functie omschrijving Gezocht: Software Developer C# .NET voor een dynamische organisatie! Ben je onlangs afgestudeerd of ben je toe aan de volgende stap in je professionele carrière? Lees dan verder! We zijn momenteel op zoek naar een Software Developer die klaar is voor een nieuwe uitdaging en die onze eindklant in de regio Arnhem kan versterken. In deze functie werk je aan verschillende projecten en bezoek je vaak klanten. Je kunt een rol verwachten met veel uitdaging, diversiteit en verantwoordelijkheid. Bedrijfsprofiel Binnen welke organisatie ga je aan de slag? Je gaat werken bij een organisatie die zich specialiseert in het

Bekijk vacature »

Low Code Ontwikkelaar

In het kort Als Low Code Developer werk je aan projecten bij en voor onze klanten, waarbij je voor het ontwikkelen van de oplossingen een technisch low-code platform gebruikt. Samen met het team streef je naar de beste oplossing en bepalen jullie de juiste aanpak. Je rol is divers en je bent van begin tot eind betrokken bij de ontwikkeling zowel de back-end en de front-end van de applicatie. Naast de ontwikkeling en oplevering, breng je ook advies uit aan de klant waarom bepaalde keuzes worden gemaakt. Je bent dan ook communicatief sterk en kunt je keuzes goed (inhoudelijk) onderbouwen.

Bekijk vacature »

.NET developer

Klaar voor een nieuwe uitdaging? Welke technologieën gaan schuil achter de dagelijkse energievoorziening? Als senior .NET developer bij Kenter maak jij samen met je team het verschil, zowel voor de interne organisatie als voor eindklanten. Samen bouwen jullie aan innovatieve dienstverlening met behulp van de nieuwste technologieën en tools. Het is een functie met veel vrijheid, goede arbeidsvoorwaarden én je draagt jouw steentje bij aan de energietransitie. Klinkt dit als iets voor jou? Lees dan verder of solliciteer direct! Wat ga je doen als senior .NET developer? Als senior .NET developer bij Kenter (onderdeel van Alliander) ben je van onschatbare

Bekijk vacature »

Lead Front-end developer

Functie Hun huidige applicatie worden ontwikkeld in o.a. React, Redux, TypeScript. Ze werken graag met de nieuwste technieken en tooling en zoeken ook developers die hier proactief op zoek naar gaan. Als senior/lead developer ben je een kartrekker in het team. Naast het meedenken over bijvoorbeeld de architectuur of toepassing van nieuwe technieken krijg je ook veel tijd om de meer junior (front-end) developers te begeleiden. Zo kun je bijvoorbeeld 1 dag in de week met 2 collega’s bezig zijn om samen met hen te kijken naar hun ontwikkeling, doelstellingen en uiteraard de gewenste begeleiding hierin. Hiernaast sta je als

Bekijk vacature »

C# developer

Functie Als ervaren Software Engineer wordt jij verantwoordelijk voor het bedenken en ontwikkelen van technische (maatwerk) oplossingen voor onze klanten en dit samen met de klant af te stemmen. Jij wordt o.a. verantwoordelijk voor de doorontwikkeling het software pakket welke voor ons enorm belangrijk is. Dit pakket zorgt er namelijk voor dat wij complete productielijnen kunnen aansturen en monitoren. Daarnaast heb jij actief contact met onze hoofdvestiging om het software achter een van onze systemen te verbeteren en te herschrijven. Momenteel zijn onze C# applicaties geschreven met o.a. Winforms. Echter hebben wij de actieve ambitie om dit te gaan herschrijven

Bekijk vacature »

C#.NET Developer

Dit ga je doen Ontwikkelen van de Back-end in .NET6 / C# en WebAPI (Focus);) Ontwikkelen van de Front-End in Nodje.js en Angular (secundair); Opstellen van een technisch ontwerp; Testen, documenteren en implementeren van de nieuwe applicatie; Verzorgen van de nazorg, na de implementatie; Het oplossen van bugs en incidenten. Hier ga je werken Als C#.NET Developer binnen deze organisatie kan jij het verschil maken. Zij werken momenteel nog met programmatuur die is ontwikkeld in C++. Hiervan gaan zij afscheid nemen zodra alle nieuwe software in C#.NET geschreven is. Een grootschalig en langdurig project. Voor hen is deze software van

Bekijk vacature »

Lasrobotprogrammeur/operator

Heb je interesse in trekkers en beschik je overvlijmscherpse precisie? Solliciteer dan op deze vacature! Als Lasoperator ben je vooral bezig met het maken van nieuwe lasrobotprogramma’s en het optimaliseren van bestaande programma’s, zowel online als offline (incl. het bedienen van de Lasrobots). Daarnaast draag je bij aan een optimaal rendement van de las robots. Verder heb je de volgende werkzaamheden: Het meewerken als operator c.q. Robotlassen niveau 2 (van complexe samenstellingen/halffabricaten), het om- en instellen van de diverse stations van lasmallen (productdragers), het afwerken van laswerk (verwijderen lasspetters en oxiden), het bewaken van de machineplanning (op bewerkingen) incl. de

Bekijk vacature »

Senior Fullstack developer wanted! (C#, Java, Angu

Functie Under the guidance of 3 account managers, one of whom will be your point of contact within your expertise, you will start working for various clients. He or she will help you find a suitable and challenging assignment. Naturally, they will take your situation, experience and (technical) ambitions into account. The assignments last one to two years on average. This allows you to really commit to a project and make an impact as a consultant. Besides the assignment, you will regularly meet your colleagues from the IT department to share knowledge or discuss new trends, for example. Master classes

Bekijk vacature »

Senior java ontwikkelaar integratie

Functieomschrijving Voor de gemeente Rotterdam zijn wij op zoek naar een senior java ontwikkelaar integratie. Taken Binnen een zelfsturend Scrumteam voer je geheel zelfstanding je opdrachten uit en levert het eindresultaat op aan het Integratieteam. Jij voelt je net als alle teamleden verantwoordelijk voor alle aspecten, vanaf de vraag tot en met de oplevering in productie. Je bent kritisch, je helpt de klant om zijn wensen helder te krijgen, je schrijft zelfstandig clean code die van hoge kwaliteit is, met bijbehorende unit- en integratietesten, je ondersteunt zo nodig bij deployments naar productie. Het Integratieteam bouwt componenten (Endpoints) op de ESB.

Bekijk vacature »

Applicatiebeheerder/ Ontwikkelaar

Dit ga je doen - Verantwoordelijkheid dragen voor het complexe applicatielandschap; - Schakelen met eindgebruikers en leveranciers; - Verdeling in werkzaamheden tussen dagelijks beheer ontwikkelen; - Het analyseren van de behoeften van gebruikers en het vertalen hiervan naar functionele specificaties voor de applicaties; - Actief bijdragen aan het leveren van passende oplossingen voor het applicatielandschap. Hier ga je werken Deze organisatie, gevestigd in de regio van Amsterdam is een van de meest toonaangevende mediaorganisaties in Nederland. Door de organisatiecultuur krijg jij veel ruimte om initiatief te nemen en zelfstandig aan het werk te gaan. Samen met het IT team zorg

Bekijk vacature »

Medior Front-end Developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als Medior Front-end Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Onze klantenkring is groot en divers, dat vraagt om flexibiliteit van jou. Tegelijkertijd betekent dit dagelijks nieuwe dingen leren én dat geen werkdag hetzelfde is. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling waarbij iedereen welkom is, zowel

Bekijk vacature »

C# Unity Developer

Functieomschrijving Ontwikkel jij mee door applicaties te bouwen die bijdragen aan het optimaliseren van processen? Voor een erkende werkgever in regio Tilburg zijn wij op zoek naar een Unity C# Developer die graag de uitdaging aangaat! Jouw werkzaamheden zullen er als volgt uitzien: Je bent een luisterend oor naar klanten en vertaalt hun wensen door naar bruikbare software; Je werkt aan innovatieve softwareoplossingen voor het verbeteren en/of vernieuwen van processen; Je bent verantwoordelijk voor het uitvoeren van updates/aanpassingen aan de reeds draaiende applicaties. Bedrijfsprofiel Je komt te werken voor een internationale werkgever in regio Tilburg. Samen met een vooruitstrevend team

Bekijk vacature »

IoT Software Developer PHP

Functie omschrijving Voor een klein softwarebedrijf in Breda, zijn wij op zoek naar een IoT software developer met kennis van PHP. In deze rol wordt je verantwoordelijk voor het vernieuwen van het multimedia platform van een super tof bedrijf in Breda. Je gebruikt PHP als programmeerlaag, en bent in staat om de helicopterview te pakken / projectmatig te werken. Jouw werkzaamheden zien er als volgt uit: Je gaat aan de slag met de ontwikkeling en vernieuwing van het "intern" ontwikkelde multimedia platform. Je neemt de lead in het moderniseren van het platform door het deels opnieuw op te zetten of

Bekijk vacature »

Senior Airport Developer ( System engineer)

De functie Nice to know (you) De nieuwe A-pier wordt de duurzaamste van Schiphol. Als deze af is ligt er 4000 vierkante meter zonnepanelen op het dak. En de toiletten? Die spoelen door met regenwater. we gaan ervoor: het creëren van de meest duurzame en hoogwaardige luchthavens ter wereld. een toekomstbestendig en duurzaam Schiphol. Daar werken we elke dag hard aan in team Development & Sustainability. Jij bent regisseur, expert én aanjager van de ontwikkeling van Schiphol. Connecting your world Hoe maak je de ambities en doelstellingen van Schiphol concreet in een project? De waarde voor Schiphol naar eisen die

Bekijk vacature »

.NET developer

Functie Als .NET developer start jij in een development team met één Senior .NET developer en één junior .NET developer. Als team zijn jullie verantwoordelijk voor het schrijven van software voor onze toonaangevende Automatiseringssystemen. Jij gaat aan de slag met de onderhoud van de kernsoftware, ondersteund de software van derden door het gebruik van onze webservices en als team zijn jullie verantwoordelijk voor het ontwikkelen van onze backend oplossingen. Wij maken op dit moment veel gebruik van .NET met ASP.NET. Komend kwartaal gaan wij wel gedeeltelijk overstappen naar .NET Core. Verder werken wij ook met SOAP, REST, JSON, HTML5, CSS3

Bekijk vacature »

Pagina: 1 2 volgende »

Arthur Nolles

Arthur Nolles

06/09/2016 18:56:23
Quote Anchor link
Hoi,

Ik heb een grote lijst met adressen en telefoonnummers. Die lijst wil ik netjes verwerken en in een mysql database stoppen. Het lastige is dat er een aantal verschillende formaten zijn waarin de adressen worden weergeven. Ik dacht dat ik er met regular expressions uit zou komen, maar mijn kennis daarvan is niet groot genoeg. Graag krijg ik hier wat hulp bij.

Dit zijn de straatformaten:

Rodekruislaan 23
2e Rodekruislaan 23
2e Rode Kruislaan 23
Rodekruislaan 23 B
2e Rodekruislaan 23 B
2e Rode Kruis Laan 23 B
Rodekruislaan 23/C
2e Rodekruislaan 23/C
Rodekruislaan 23C 001
2e Rodekruislaan 23C 001
Rodekruislaan 23 C 001
Rodekruislaan 23 C 001B
etc

Ik wil graag de straat, het nummer en de toevoeging opsplitsen. Tot nu toe heb ik dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
       if (preg_match('/(?P<straat>.*)\s(?P<nummer>\d*)\s(?P<toevoeging>\w*)$/', $string, $matches)) {
          
          var_dump($matches);
        
   }

?>


Ik krijg dan de volgende array terug:

array (size=8)
0 => string 'Rode Kruislaan 1302' (length=19)
'straat' => string 'Rode Kruislaan' (length=14)
1 => string 'Rode Kruislaan' (length=14)
'nummer' => string '130' (length=3)
2 => string '130' (length=3)
3 => string '2' (length=1)
'toevoeging' => string '' (length=0)
4 => string '' (length=0)

Ik snap niet waarom het nummer afgebroken wordt. Kan iemand mij dat vertellen? En weet jij of er een formaat is waarmee ik alle typen adressen kan formateren? Het kan dus zijn dat een straatnaam meerdere spaties heeft, wat het ook lastig maakt, denk ik. Ook kan het zijn dat de string begint met een nummer, zoals je ziet in de voorbeelden hier bovven.

Alvast super bedankt, ik weet dat dit een lastige vraag is.

Groetjes,

Arthur
Gewijzigd op 06/09/2016 18:58:39 door Arthur Nolles
 
PHP hulp

PHP hulp

24/11/2024 06:20:04
 
Ben van Velzen

Ben van Velzen

06/09/2016 19:47:22
Quote Anchor link
Grappig, hoe ga je adressen als Laan 1940-1945 12 dan goed oppakken? Dit soort dingen leidt *altijd* tot gezeur, laat mensen gewoon zelf hun adres invullen zoals het hoort. Dus met gewoon velden voor straat, huisnummer etc. Mensen weten veel beter waar ze wonen dan wat jij denkt ervan te kunnen maken.
 
Arthur Nolles

Arthur Nolles

06/09/2016 19:51:18
Quote Anchor link
Beste Ben,

Het gaat om een lijst die ik al heb, dus niet om data die ik nog moet verzamelen.

Toevoeging op 06/09/2016 20:10:24:

Daarnaast weet ik dat er altijd uitzonderingen zullen zijn. In het geval van Laan 1945 zal ik gewoon handmatig een aanpassing moeten doen en dat vind ik niet zo erg. Maar ik wil graag dat het bulk van de straatnamen goed geformateerd worden en daarbij kan ik hulp gebruiken. Ik stel hulp dan ook zeer op prijs.
 
Adoptive Solution

Adoptive Solution

06/09/2016 22:34:28
Quote Anchor link
Dit moet je een eind op weg helpen.

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?php

echo '<h3>Array</h3>';

$haystack = array("Rodekruislaan 23",
"2e Rodekruislaan 23",
"2e Rode Kruislaan 23",
"Rodekruislaan 23 B",
"2e Rodekruislaan 23 B",
"2e Rode Kruis Laan 23 B",
"Rodekruislaan 23/C",
"2e Rodekruislaan 23/C",
"Rodekruislaan 23C 001",
"2e Rodekruislaan 23C 001",
"Rodekruislaan 23 C 001",
"Rodekruislaan 23 C 001B");

echo '<pre>';
print_r($haystack);
echo '</pre>';

echo '<h3>Output Array na preg_match</h3>';

$output = array();

for($x = 0; $x < count($haystack); $x++) {

    preg_match("/^(.+)\s(\d+)\s?(.?)(.*)?/", $haystack[$x], $output_array);

    if(count($output_array) > 0) {
        $output[] = $output_array;
    }

}


echo '<pre>';
print_r($output);
echo '</pre>';

echo '<h3>Netjes geprint</h3>';

for($i = 0; $i < count($output); $i++) {
    for($x = 0; $x < count($output[$i]); $x++) {
        echo ' {' . $output[$i][$x] . '} ';
    }

    echo "<br>";
}


?>
 
Arthur Nolles

Arthur Nolles

06/09/2016 23:11:09
Quote Anchor link
Wauw adoptive solutions! Dat lijkt al een heel eind in de goede richting. Toch gaat het nog niet helemaal goed. Bij de laatste vier worden de huisnummers niet gescheiden. Is daar nog een oplossing voor te vinden? Hartelijk bedankt, ik ben hier al heel blij mee, je helpt me echt enorm!

Toevoeging op 06/09/2016 23:11:42:

"Netjes geprint" wordt het zo weergegeven:

{Rodekruislaan 23} {Rodekruislaan} {23} {} {}
{2e Rodekruislaan 23} {2e Rodekruislaan} {23} {} {}
{2e Rode Kruislaan 23} {2e Rode Kruislaan} {23} {} {}
{Rodekruislaan 23 B} {Rodekruislaan} {23} {B} {}
{2e Rodekruislaan 23 B} {2e Rodekruislaan} {23} {B} {}
{2e Rode Kruis Laan 23 B} {2e Rode Kruis Laan} {23} {B} {}
{Rodekruislaan 23/C} {Rodekruislaan} {23} {/} {C}
{2e Rodekruislaan 23/C} {2e Rodekruislaan} {23} {/} {C}
{Rodekruislaan 23C 001} {Rodekruislaan 23C} {001} {} {}
{2e Rodekruislaan 23C 001} {2e Rodekruislaan 23C} {001} {} {}
{Rodekruislaan 23 C 001} {Rodekruislaan 23 C} {001} {} {}
{Rodekruislaan 23 C 001B} {Rodekruislaan 23 C} {001} {B} {}

Toevoeging op 06/09/2016 23:13:56:

Nog een vraag; ik snap niet goed waarvoor de vraagtekens gebruikt worden, bijvoorbeeld: \s?. Kun je me dat vertellen, want in de documentatie kom ik er niet echt uit.
 
Adoptive Solution

Adoptive Solution

06/09/2016 23:37:09
Quote Anchor link
Introduceer eerst een fout met zoek vervang en maak van 23C en 23 C > 23/C

Dan wordt het netjes gesplits.

EDIT : te vroeg gegokt, dan maar met de hand wijzigen.

\s? kijkt of er een spatie is.
Gewijzigd op 06/09/2016 23:41:52 door Adoptive Solution
 
Arthur Nolles

Arthur Nolles

06/09/2016 23:43:32
Quote Anchor link
Hoi Adoptive Solution. Wat bedoel je met 'introduceer eerst een fout'? En misschien een stomme vraag, hoe voeg ik die slash toe, wanneer we het punt bereiken waarop we als straat Rodekruislaan 23 C krijgen, is de code al uitgevoerd. Kun je me hier nog mee helpen? Ik ben er ondertussen wel mee aan 't stoeien. Ik kan nadat de code is uitgevoerd wel een str_replace doen, maar dan is het nog niet gescheiden?

Toevoeging op 06/09/2016 23:50:04:

Ik volg je niet helemaal, wat bedoel je met 'te vroeg gegokt'? Ik kan de records niet echt met de hand wijzigen, ik heb 2 miljoen records die geformateerd moeten worden.
Gewijzigd op 06/09/2016 23:44:06 door Arthur Nolles
 
Adoptive Solution

Adoptive Solution

07/09/2016 00:05:06
Quote Anchor link
Ik weet niet hoeveel straatnamen er zijn, maar haal eerst de goede adressen eruit en corrigeer de rest met de hand.

Toevoeging op 07/09/2016 00:18:40:

Verwijder met zoek/vervang de spaties en / uit de huisnummers en gebruik dan dit :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
preg_match("/^(.+)\s(\d+)\s?(.?)\s?(.*)?/", $haystack[$x], $output_array);


Het resultaat is dan beter.

Je moet dan alleen nog bv. 001B met de hand splitsen.
Gewijzigd op 07/09/2016 00:19:44 door Adoptive Solution
 
Ivo P

Ivo P

07/09/2016 09:13:05
Quote Anchor link
ik zou een oplossing met een regex alleen loslaten op een adres met hooguit 1 getal (getal, dus niet cijfer) erin.

En dan ga ik er nog vanuit dat er ook werkelijk een huisnummer in je adres staat.

Alles wat je overhoudt:
plein 1940 12
Willem 3 laan 13
1e kerkstraat 3
kerkstraat 42F1

laat je door een stagiair oplossen.
 
Ward van der Put
Moderator

Ward van der Put

07/09/2016 10:46:33
Quote Anchor link
Deze oplossing in JavaScript is wel aardig:

https://gist.github.com/devotis/c574beaf73adcfd74997

Maar ik denk dat ik zelf een andere 'oplossingsstrategie' zou volgen. Voor Nederlandse adressen gelden enkele beperkingen: het huisnummer en de huisnummertoevoeging mogen beide niet langer zijn dan 5 karakters. Inclusief scheidingsteken tussen huisnummer en huisnummertoevoeging kom je daarmee op maximaal 11 karakters vanaf het einde van de adresregel. Die regels zijn het uitgangspunt van de volgende functie:

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
/**
 * @param string $address
 * @return array
 */

function getAddressArray($address)
{

    $address = trim($address);
    $street = $address;
    $home_number_extension = '';
 
    $home_number = substr($address, -11);
    $max = strlen($home_number);

    for ($i=0; $i < $max; $i++) {
        if (is_numeric($home_number{$i})) {
            $home_number = substr($address, -$max + $i);
            $street = substr($address, 0, strlen($address) - $max + $i);
            break;
        }
    }


    if ($i == $max) {
        $home_number = '';
        $home_number_extension = '';
    }


    for ($i = 0; $i < strlen($home_number); $i++) {
        if (!is_numeric($home_number{$i})) {
            $home_number_extension = substr($home_number, $i);
            $home_number = substr($home_number, 0, $i);
            break;
        }
    }


    return array(trim($street), trim($home_number), trim($home_number_extension));
}


// Test cases
$cases = array(
    'Rodekruislaan 23',
    '2e Rodekruislaan 23',
    '2e Rode Kruislaan 23',
    'Rodekruislaan 23 B',
    '2e Rodekruislaan 23 B',
    '2e Rode Kruis Laan 23 B',
    'Rodekruislaan 23/C',
    '2e Rodekruislaan 23/C',
    'Rodekruislaan 23C 001',
    '2e Rodekruislaan 23C 001',
    'Rodekruislaan 23 C 001',
    'Rodekruislaan 23 C 001B',
);


// Test
echo '<pre>';
foreach ($cases as $case) {
    var_dump($case);
    var_dump(getAddressArray($case));
}

?>
 
Ivo P

Ivo P

07/09/2016 11:32:30
Quote Anchor link
In Ede is een "Laan 1933"

Woon je daar op nummer 12, dan verhuist bovenstaand script je naar huisnummer 1933 met toevoeging 12.

Misschien zou het nog een optie zijn om op basis van de postcode via een API een straatnaam erbij te zoeken voor de twijfelgevallen.
Met een beetje geluk matcht de gevonden straatnaam ook met de schrijfwijze van het adres in je lijst.

Maar met "BURG. WUITEWEG" vs "Burgemeester Wuiteweg" heb je evengoed nog een uitdaging.
 
Ward van der Put
Moderator

Ward van der Put

07/09/2016 11:42:37
Quote Anchor link
Alle cases van de TS worden wel gematcht, maar het blijft inderdaad een drama wat uitzonderingen betreft. Ik denk dat je zoiets in een nette gebruikersinterface moet verpakken die twijfelgevallen markeert voor een menselijke correctie. Bijvoorbeeld alle adresregels met getallen op twee verschillende posities.

Straatnamen vergelijken via een postcode-API is inderdaad ook slim. Eventueel kun je dat nog combineren met een soort spellingcorrectie die alle 'Burg. ' vervangt door 'Burgemeester '.
 
Adoptive Solution

Adoptive Solution

07/09/2016 12:04:02
Quote Anchor link
Mensen in Ede kunnen gerust zijn. Hun straatnaam wordt netje gepregd :

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
[1] => Array
        (
            [0] => Laan 1933 123
            [1] => Laan 1933
            [2] => 123
            [3] =>
            [4] =>
        )

    [2] => Array
        (
            [0] => Plein 40-45 99
            [1] => Plein 40-45
            [2] => 99
            [3] =>
            [4] =>
        )
 
Arthur Nolles

Arthur Nolles

07/09/2016 15:44:14
Quote Anchor link
Ik wil iedereen heel hartelijk bedanken, vooral Ward van der Put. Jouw oplossing lijkt in alle gevallen de juiste data te weergeven. Heel veel dank.
 
Thomas van den Heuvel

Thomas van den Heuvel

09/09/2016 11:58:57
Quote Anchor link
Neemt niet weg dat het probleem waarschijnlijk is ontstaan doordat je voor het hele adres één invulveld had. Je kunt dan geen onderscheid maken tussen de delen waaruit deze is opgebouwd. Deze wens is er nu blijkbaar?

De enige manier om dit probleem (naar de toekomst toe) op te lossen / te voorkomen is zoals @Ben aangeeft: het introduceren van aparte invoervelden.

Ik snap dat je je invoer die je nu reeds hebt wil fixen maar ik hoop dat dit ook duidelijk maakt dat deze ook soms echt niet klopt. Je moet niet proberen recht te breien wat krom is.

Idealiter heb je dus een mechanisme die al bij invoer kijkt of de informatie klopt. Bijvoorbeeld een autocomplete op grond van huisnummer + postcode. En voor de randgevallen kun je je adres handmatig in- of aanvullen.

Dit alles zodat de informatie die de database ingaat klopt en gestructureerd staat opgeslagen zodat je niet achteraf hier doorheen moet baggeren met allerlei vage regexes om de boel weer te fixen :/.
 
Arthur Nolles

Arthur Nolles

09/09/2016 12:03:19
Quote Anchor link
Beste Thomas,

Het is altijd lekker makkelijk om e.e.a. aan te nemen. Maar zoals ik eerder zei heb ik deze data zo aangeleverd gekregen en heb ik het hier mee te doen - ik was niet degene die de data heeft verzameld. Is inderdaad vervelend, maar geen preek waard. Ik denk dat wat je zegt voor iedereen wel duidelijk was.
 
Thomas van den Heuvel

Thomas van den Heuvel

09/09/2016 14:26:30
Quote Anchor link
Als deze data aangeleverd wordt dan kun je in het vervolg wellicht ook wat kritischer zijn over de vorm waarin dit aangeleverd wordt, anders maak je het op deze manier je eigen probleem waarbij je van een zwik ongestructureerde data iets gestructureerds moet maken.

En als dat ook niet mogelijk is dat loont het wellicht de moeite om eens een balletje op te gooien bij deze partij zodat ze hun eigen informatiehuishouding op orde stellen.

Misschien zit men niet te wachten op dit soort (bijdehante?) opmerkingen. Aan de andere kant, als ik door de luiheid / stupiditeit van anderen meer werk heb, dan zou ik daar iets van zeggen.

Je hoeft niet zomaar alles te accepteren wat over de schutting gegooid wordt.
 
- Ariën  -
Beheerder

- Ariën -

09/09/2016 14:35:04
Quote Anchor link
Een balletje opgooien kan altijd, maar soms kan je er niks aan doen dat het nou eenmaal zo aangeleverd wordt. Niet iedereen is in alles zo efficiënt, en dan moet je roeien met de riemen die je nou eenmaal hebt om toch met omweggetjes de boel fatsoenlijk te kunnen verwerken.
Soms moet je gewoon keuzes maken!

Verder is dit ook niet echt de vraag van de topicstarter, en heeft die ook aangegeven niet anders te kunnen. Dus we kunnen ons maar beter bij deze 'wereldverbetering' neerleggen.
 
Thomas van den Heuvel

Thomas van den Heuvel

09/09/2016 14:52:40
Quote Anchor link
Deze website gaat toch over het oplossen van programmeervraagstukken? Het probleem hier is dat je input ongestructureerde bagger is (of, in ieder geval, er wordt te weinig onderscheid gemaakt tussen de verschillende onderdelen waarin je geinteresseerd bent (straatnaam, huisnummer, toevoeging etc.). De topicstarter is vervolgens op zoek naar een maatwerk oplossing om dit recht te breien).

De enige juiste oplossing is dan ook het repareren van (het aanleveren van) de input. Alle andere oplossingen, hoe goed deze ook werken, zijn symptoombestrijdingen van (lees: ad hoc oplossingen voor) het oorspronkelijke probleem.

Dit is geen wereldverbetering, dit is mensen confronteren met gemaakte keuzen. En proberen te achterhalen of deze beslissingen ergens op gebaseerd zijn. Of dat er uberhaupt is nagedacht over hoe je informatie wilt gaan gebruiken / inzetten.

Niets is zo verkwistend als voortborduren op een slecht ontwerp. Dit is dan ook niet iets wat aangemoedigd zou moeten worden.

EDIT: kan het ergens wel plaatsen dat TS enigszins geagiteerd reageert, niemand vind het immers leuk om andermans rommel op te ruimen. Zeg daar dan ook wat van.
Gewijzigd op 09/09/2016 15:05:07 door Thomas van den Heuvel
 
- Ariën  -
Beheerder

- Ariën -

09/09/2016 15:09:35
Quote Anchor link
Daarom kan je bij de derde partij een balletje opgooien, en dan afwachten. Anders is het zoals ik net ook al zei, roeien met de riemen die je hebt. Je kan iemand ook niet altijd dwingen om de juiste informatie aan te leveren. Ik heb vroeger ook wel eens ranzige convertertjes moeten maken om data op te halen, en nee dat kon niet anders.

Een discussie over het 'hoe wel/niet aanleveren van adressen en in welk formaat' vind ik niet veel waard in dit topic. Daar mag wat mij betreft een nieuw topic voor worden aangemaakt. De topicstarter heeft immers al aangegeven zijn lijst al zo te hebben, en daar weinig aan te kunnen veranderen.
Gewijzigd op 09/09/2016 15:12:50 door - Ariën -
 
Thomas van den Heuvel

Thomas van den Heuvel

09/09/2016 21:37:53
Quote Anchor link
Edit:
**knip**
Ja, nu weten we je standpunt wel! Maar dat had ook vriedelijker gemogen!
Gewijzigd op 09/09/2016 23:24:57 door - Ariën -
 

Pagina: 1 2 volgende »



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.