preg_match alleen de telefoon nummers uit verschillende notaties

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Harry Hartman

Harry Hartman

14/09/2014 13:17:07
Quote Anchor link
In ons leden bestand staan de telefoonnummers in verschillende notaties als:
Tel.: 1234 - 567890
Tel: 123 -4567890
Telf: 123-4567890
Telefoon 1234 - 4567890
enz.

Hoe schrijf ik nu een functie met preg_match (denk ik) die alleen de cijfers eruit haalt en deze schrijft als:
xxx-xxxxxxx of xxxx-xxxxxx (ligt aan kerngetal)
Gewijzigd op 14/09/2014 13:18:39 door Harry Hartman
 
PHP hulp

PHP hulp

19/04/2024 03:39:43
 
Obelix Idefix

Obelix Idefix

14/09/2014 13:44:42
Quote Anchor link
Hoe weet je de lengte van het kengetal?
 
Harry Hartman

Harry Hartman

14/09/2014 15:28:03
Quote Anchor link
Obelix en Idefix op 14/09/2014 13:44:42:
Hoe weet je de lengte van het kengetal?


Niet, ik wil alleen aangeven dat het streepje dus niet een vaste plaats heeft.
 
Obelix Idefix

Obelix Idefix

14/09/2014 15:48:56
Quote Anchor link
Staat in elk telefoonnummer 1 streepje?
Hoe wil je anders bepalen waar het streepje komt te staan?
 
Jordi Kroon

Jordi Kroon

14/09/2014 16:09:42
Quote Anchor link
Staat er altijd een spatie tussen de "telefoon" en het nummer? Zoja, dan zou je kunnen exploden op de spatie.
 
Pipo Clown

Pipo Clown

14/09/2014 16:14:48
Quote Anchor link
Gewoon alles wat geen getal is er uit filteren.

Zolang het nederlandse telefoonnummers zijn houd je dan altijd 10 cijfers over, zelfs bij 06 nummers.
Waar het streepje staat is volkomen irrelevant, de 10 cijfers na elkaar invoeren werkt altijd, ongeacht wat het netnummer is of in welkeregio je jezelf bevindt, of je een vaste telefoon of een mobiel gebruikt.
 
Harry Hartman

Harry Hartman

14/09/2014 20:58:49
Quote Anchor link
Inmiddels ben ik er zelf uitgekomen door d+ in preg_match_all te ontdekken, die kende ik niet.
Voor de liefhebbers:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
$T = "Tel.: 123 - 4567890 // voorbeeld
if(preg_match_all('/\d+/', $T, $Match))
{
  foreach( $Match[0] as $t )
  {
     echo $t;
  }
}
 
Eddy E

Eddy E

14/09/2014 21:40:44
Quote Anchor link
@ PipoClown: behalve 112, 114, 1888, 9191, 0800, 0900 en zo zijn er nog wel een aantal.
 



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.