abonnement Unibet Coolblue
pi_94147315
Weet iemand een oplossing voor het volgende

Ik wil een straatnaam + nummer van elkaar splitsen, echter kan het nummertje er op verschillende manieren staan

straatnaam 12
straatnaam 12-12
straatnaam 12a
straatnaam 12-a
straatnaam 12 a1
etc

Nu heb ik het volgende gevonden om het te matchen en splitten maar het werkt niet helemaal, nu heb ik zelf geprobeerd om er aan toe te voegen dat het ook streepjes kan accepteren, maar op een of andere manier werkte het niet.

Origineel:
preg_match ( '~(.*?)\s*(\d+\D*)$~' , $address , $number

Aangepast:
preg_match ( '~(.*?)\s*([\-]\d+\D*)$~' , $address , $number

maar op een of andere manier weet ik niet hoe ik in (\d+\D*) een - als match kan toevoegen. Iemand?
Just say hi!
pi_94149563
(.+)\s([0-9].*)
pi_94151739
Wie kan me even helpen met deze regex?

Ik wil graag floating point getallen matchen.

Ik heb deze regex "[-]?[0-9]*\.?[0-9]+" van http://www.regular-expressions.info/floatingpoint.html. Ik wil echter dat de regex alles wegfiltert wat fout is. Nu krijg ik namelijk bij de invoer "-13x.1%.4$,14.2" "x%$," ervoor terug terwijl ik graag "-13.1" wil terug krijgen (alles na de 2de punt is immers fout).
  dinsdag 15 maart 2011 @ 18:50:10 #279
111382 Ofyles2
Bestemming: onbekend
pi_94153221
Waarom staat er een vraagteken achter dat punt als ik vragen mag?
  dinsdag 15 maart 2011 @ 19:05:30 #280
75592 GlowMouse
l'état, c'est moi
pi_94153848
Chandler: je kunt met preg_match kijken waar het eerste getal voorkomt, of anders
1([^0-9]*)(.*)
gebruiken en wel de straatnaam nog trimmen ivm spatie.
quote:
5s.gif Op dinsdag 15 maart 2011 17:23 schreef KomtTijd... het volgende:
(.+)\s([0-9].*)
gaat mis bij "straatnaam 12 a1".
quote:
1s.gif Op dinsdag 15 maart 2011 18:13 schreef Dale. het volgende:
Wie kan me even helpen met deze regex?

Ik wil graag floating point getallen matchen.

Ik heb deze regex "[-]?[0-9]*\.?[0-9]+" van http://www.regular-expressions.info/floatingpoint.html. Ik wil echter dat de regex alles wegfiltert wat fout is. Nu krijg ik namelijk bij de invoer "-13x.1%.4$,14.2" "x%$," ervoor terug terwijl ik graag "-13.1" wil terug krijgen (alles na de 2de punt is immers fout).
Hoe moet hij raden dat met "-13x.1" -13.1 bedoeld wordt?
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_94156777
quote:
1s.gif Op dinsdag 15 maart 2011 19:05 schreef GlowMouse het volgende:
Chandler: je kunt met preg_match kijken waar het eerste getal voorkomt, of anders

[ code verwijderd ]

gebruiken en wel de straatnaam nog trimmen ivm spatie.

[..]

gaat mis bij "straatnaam 12 a1".

[..]

Hoe moet hij raden dat met "-13x.1" -13.1 bedoeld wordt?
Door de x weg te filteren en alles na, inclusief, de punt?
pi_94157118
quote:
1s.gif Op dinsdag 15 maart 2011 19:05 schreef GlowMouse het volgende:
Chandler: je kunt met preg_match kijken waar het eerste getal voorkomt, of anders

[ code verwijderd ]

gebruiken en wel de straatnaam nog trimmen ivm spatie.

Gaat mis bij "1e middellandstraat"
  dinsdag 15 maart 2011 @ 20:03:45 #283
111382 Ofyles2
Bestemming: onbekend
pi_94157350
quote:
3s.gif Op dinsdag 15 maart 2011 20:00 schreef KomtTijd... het volgende:

[..]

Gaat mis bij "1e middellandstraat"
Of wat te denken van Plein 1945 3?
pi_94157822
quote:
1s.gif Op dinsdag 15 maart 2011 19:54 schreef Dale. het volgende:

[..]

Door de x weg te filteren en alles na, inclusief, de punt?
waarom niet gewoon filter_var($float,FILTER_SANITIZE_NUMBER_FLOAT) ??
pi_94160300
Laat ze gewoon het huisnummer en toevoeging apart invoeren dan :P.
  dinsdag 15 maart 2011 @ 20:44:01 #286
111382 Ofyles2
Bestemming: onbekend
pi_94160349
quote:
1s.gif Op dinsdag 15 maart 2011 20:43 schreef Tegan het volgende:
Laat ze gewoon het huisnummer en toevoeging apart invoeren dan :P.
Goed idee, daar zat ik ook al aan te denken.
pi_94160403
Hoewel ik me afvraag waarom je ze apart nodig hebt?
  dinsdag 15 maart 2011 @ 20:46:13 #288
111382 Ofyles2
Bestemming: onbekend
pi_94160535
quote:
1s.gif Op dinsdag 15 maart 2011 20:44 schreef Tegan het volgende:
Hoewel ik me afvraag waarom je ze apart nodig hebt?
Vergeet mijn vorige post, ik praatte voor mijn beurt...
  dinsdag 15 maart 2011 @ 20:55:52 #289
302853 themole
graaft totaal door.
pi_94161355
quote:
1s.gif Op dinsdag 15 maart 2011 20:44 schreef Tegan het volgende:
Hoewel ik me afvraag waarom je ze apart nodig hebt?
En zelfs als je ze apart nodig hebt kun je het beter in twee velden zetten. Achteraf concateneren is makkelijker dan splitsen. Tenzij je natuurlijk de adressen in een al gegeven database wil splitsen. :P
Niet altijd serieus
pi_94161617
Dat laatste dacht ik ook ja :P .
pi_94161697
quote:
1s.gif Op dinsdag 15 maart 2011 20:03 schreef Ofyles2 het volgende:

[..]

with ^^
quote:
14s.gif Op dinsdag 15 maart 2011 20:44 schreef Ofyles2 het volgende:

[..]

with ^^
quote:
1s.gif Op dinsdag 15 maart 2011 20:46 schreef Ofyles2 het volgende:

[..]
with ^^
Euh, ja ok.
  dinsdag 15 maart 2011 @ 21:15:56 #292
75592 GlowMouse
l'état, c'est moi
pi_94162945
quote:
3s.gif Op dinsdag 15 maart 2011 20:00 schreef KomtTijd... het volgende:

[..]

Gaat mis bij "1e middellandstraat"
quote:
1s.gif Op dinsdag 15 maart 2011 20:03 schreef Ofyles2 het volgende:

[..]

Of wat te denken van Plein 1945 3?
Je kunt technisch geen onderscheid maken tussen Plein, nummer 1945 3 en tussen Plein 1945, nummer 3.
quote:
1s.gif Op dinsdag 15 maart 2011 19:54 schreef Dale. het volgende:

[..]

Door de x weg te filteren en alles na, inclusief, de punt?
In dat geval zoek je [0-9x]*\.[0-9x]*, waarna je de x via str_replace uit het resultaat haalt.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  dinsdag 15 maart 2011 @ 21:19:17 #293
302853 themole
graaft totaal door.
pi_94163233
Overigens heb je in nederland ook gebieden die alleen straatnummers hebben, wat het helemaal ingewikkeld maakt.
Niet altijd serieus
  dinsdag 15 maart 2011 @ 22:14:08 #294
113667 Keiichi
Konnichiwa!
pi_94167765
Ik ben bezig met prepared statements in mysqli, maar ik kom iets tegen waar ik niet aan uitkom. Ik heb een tabel met veel kolommen, dus ik probeer wat geautomatiseerder queries te maken. Resultaat hiervan is bv:

"REPLACE INTO `tabel` (`een`,`twee`,`drie`) VALUES (?,?,?)"

Ik heb een array met corresponderende veldtypes en waardes in arrays staan. De types kan ik makkelijk impoden naar een bijhorende string, maar ik kan de array niet als argument opgeven en vol uitschrijven gaat niet (Althans, iemand heeft 100 kolommen in een tabel gemaakt, daarvoor ga ik echt geen 100 variables aanmaken en een mega bind_param call maken -O-

Wie heeft er hiervoor een oplossing?
  dinsdag 15 maart 2011 @ 22:19:26 #295
302853 themole
graaft totaal door.
pi_94168221
quote:
1s.gif Op dinsdag 15 maart 2011 22:14 schreef Keiichi het volgende:
Ik ben bezig met prepared statements in mysqli, maar ik kom iets tegen waar ik niet aan uitkom. Ik heb een tabel met veel kolommen, dus ik probeer wat geautomatiseerder queries te maken. Resultaat hiervan is bv:

"REPLACE INTO `tabel` (`een`,`twee`,`drie`) VALUES (?,?,?)"

Ik heb een array met corresponderende veldtypes en waardes in arrays staan. De types kan ik makkelijk impoden naar een bijhorende string, maar ik kan de array niet als argument opgeven en vol uitschrijven gaat niet (Althans, iemand heeft 100 kolommen in een tabel gemaakt, daarvoor ga ik echt geen 100 variables aanmaken en een mega bind_param call maken -O-

Wie heeft er hiervoor een oplossing?
Zit er een logica achter de kolomnamen of niet.

Als ze bijvoorbeeld 1 t/m 100 heten kan je proberen een for/while loop. Anders ben je vrij goed gefuckt.
Niet altijd serieus
pi_94169106
quote:
1s.gif Op dinsdag 15 maart 2011 22:14 schreef Keiichi het volgende:
Ik ben bezig met prepared statements in mysqli, maar ik kom iets tegen waar ik niet aan uitkom. Ik heb een tabel met veel kolommen, dus ik probeer wat geautomatiseerder queries te maken. Resultaat hiervan is bv:

"REPLACE INTO `tabel` (`een`,`twee`,`drie`) VALUES (?,?,?)"

Ik heb een array met corresponderende veldtypes en waardes in arrays staan. De types kan ik makkelijk impoden naar een bijhorende string, maar ik kan de array niet als argument opgeven en vol uitschrijven gaat niet (Althans, iemand heeft 100 kolommen in een tabel gemaakt, daarvoor ga ik echt geen 100 variables aanmaken en een mega bind_param call maken -O-

Wie heeft er hiervoor een oplossing?
Met een query
1DESCRIBE <table>
moet je een overzicht van de aanwezige kolommen kunnen krijgen. Dat is vast wel met een array verder te verwerken.
pi_94169156
quote:
1s.gif Op dinsdag 15 maart 2011 22:14 schreef Keiichi het volgende:
Ik ben bezig met prepared statements in mysqli, maar ik kom iets tegen waar ik niet aan uitkom. Ik heb een tabel met veel kolommen, dus ik probeer wat geautomatiseerder queries te maken. Resultaat hiervan is bv:

"REPLACE INTO `tabel` (`een`,`twee`,`drie`) VALUES (?,?,?)"

Ik heb een array met corresponderende veldtypes en waardes in arrays staan. De types kan ik makkelijk impoden naar een bijhorende string, maar ik kan de array niet als argument opgeven en vol uitschrijven gaat niet (Althans, iemand heeft 100 kolommen in een tabel gemaakt, daarvoor ga ik echt geen 100 variables aanmaken en een mega bind_param call maken -O-

Wie heeft er hiervoor een oplossing?
Hoe ziet die array er precies uit dan?
Zo'n prepared statement doe je toch gewoon een array voeren?
pi_94169164
quote:
14s.gif Op dinsdag 15 maart 2011 22:19 schreef themole het volgende:

[..]

Zit er een logica achter de kolomnamen of niet.

Als ze bijvoorbeeld 1 t/m 100 heten kan je proberen een for/while loop. Anders ben je vrij goed gefuckt.
Je bent pas echt fucked als de kolomnamen niet duidelijk aangeven wat de inhoud is.
  dinsdag 15 maart 2011 @ 22:34:30 #299
302853 themole
graaft totaal door.
pi_94169450
quote:
1s.gif Op dinsdag 15 maart 2011 22:30 schreef Light het volgende:

[..]

Met een query

[ code verwijderd ]

moet je een overzicht van de aanwezige kolommen kunnen krijgen. Dat is vast wel met een array verder te verwerken.
Dan moet de volgorde van je Array wel gelijk zijn aan de volgorde waarin de kolommen in de tabel staan. Maar het is iig vervelend lastig. :P
Niet altijd serieus
pi_94170214
quote:
14s.gif Op dinsdag 15 maart 2011 22:34 schreef themole het volgende:

[..]

Dan moet de volgorde van je Array wel gelijk zijn aan de volgorde waarin de kolommen in de tabel staan. Maar het is iig vervelend lastig. :P
Met AdoDB kun je ook:
1
2
3
<?php
$db
->Execute('INSERT INTO `table` (`een,` `twee`) VALUES (:een, :twee)',array('een'=>'foo''twee'=>'bar'));
?>

geen idee in hoeverre dat vergelijkbaar werkt...
abonnement Unibet Coolblue
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')