Regx; alleen 06 en alleen vaste nummers valideren via Regex

Pagina: 1
Acties:
  • 4.337 views

Vraag


Acties:
  • 0 Henk 'm!

Anoniem: 1111599

Topicstarter
Mijn vraag
...
Heb deze regex. Bij 06 nummer moet de regex vaste nummers eruit filteren. En bij vaste telefoonnummers juist 06 én 00316 .

Deze regex gebruik ik nu voor 06-formulier en vaste telefoonnummers te valideren. W
(^\+[0-9]{2}|^\+[0-9]{2}\(0\)|^\(\+[0-9]{2}\)\(0\)|^00[0-9]{2}|^0)([0-9]{9}$|[0-9\-\s]{9}$)

...
Hoe wijzig ik deze regex zo, en wat moet ik toevoegen/wijzigen zodat hij wel werkt.
...

Alle reacties


Acties:
  • 0 Henk 'm!

  • Orion84
  • Registratie: April 2002
  • Laatst online: 17:44

Orion84

Admin General Chat / Wonen & Mobiliteit

Fotogenie(k)?

Dus je hebt nu een regex waarmee je generiek telefoonnummers valideert en in plaats daarvan wil je 2 expressies: één om mobiele nummers te valideren en één om vaste nummers te valideren?

Wat heb je zelf al gezocht? Want als ik simpel google op regex mobiel nummer, kom ik bijvoorbeeld dit tegen: https://murani.nl/blog/20...dse-reguliere-expressies/
Daar worden de volgende expressies genoemd:
Vast:
^(((0)[1-9]{2}[0-9][-]?[1-9][0-9]{5})|((\\+31|0|0031)[1-9][0-9][-]?[1-9][0-9]{6}))$

Mobiel:
^(((\\+31|0|0031)6){1}[1-9]{1}[0-9]{7})$

[ Voor 22% gewijzigd door Orion84 op 13-11-2018 11:59 ]

The problem with common sense is that it's not all that common. | LinkedIn | Flickr


Acties:
  • +3 Henk 'm!

  • TERW_DAN
  • Registratie: Juni 2001
  • Niet online

TERW_DAN

Met een hamer past alles.

Ken je https://regex101.com?
Die is echt zo verdomd handig om je regexen snel te testen EN je inzichtelijk te maken wat die doet. Regexen kunnen ontzettend complex zijn, met die tool kun je dat veel duidelijker maken.

Hoe wil je dat de validatie werkt? Want ik zie zo snel in je regex niet dat hij specifiek op 06 filtert.

Acties:
  • 0 Henk 'm!

Anoniem: 1111599

Topicstarter
TERW_DAN
Goede vraag: dit
Bij 06 de volgende validatie: start het nummer met 00316, of 06 en 10 tekens?
Bij vast telefoonnummer valideren op: zijn het 10 tekens en start het nummer niet met 06 of 00316 ?

[/quote]

Acties:
  • 0 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 23:29
Ondanks dat ik zelf de uitdaging ook wel leuk zou vinden om het met een regex op te lossen toch de vraag, moet het een regex zijn :) ?

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • jip_86
  • Registratie: Juli 2004
  • Laatst online: 17:00
Waarom wil je eigenlijk dat onderscheid kunnen maken?

Acties:
  • 0 Henk 'm!

  • heuveltje
  • Registratie: Februari 2000
  • Laatst online: 17:08

heuveltje

KoelkastFilosoof

Geen idee of het relevant is. Maar aangezien het snel over het hoofd gezien word.

Ga er niet van uit dat vaste nr's altijd 10 cijfers zijn. 088 nr's kunnen bijvoorbeeld korter zijn.
Machinebased mobiele telefonie gebruikt een 097 netnr. mogelijk wil je dat ook meenemen ?

[ Voor 23% gewijzigd door heuveltje op 13-11-2018 12:27 ]

Heuveltjes CPU geschiedenis door de jaren heen : AMD 486dx4 100, Cyrix PR166+, Intel P233MMX, Intel Celeron 366Mhz, AMD K6-450, AMD duron 600, AMD Thunderbird 1200mhz, AMD Athlon 64 x2 5600, AMD Phenom X3 720, Intel i5 4460, AMD Ryzen 5 3600 5800x3d


Acties:
  • 0 Henk 'm!

Anoniem: 1111599

Topicstarter
Omdat de input van telefoonnummers gevalideerd moet worden. . Zonde om achteraf in Excel te gaan filteren... Had een Regex standaard voor filteren verwacht gezien er een standaard is E.164

ontopic: wie heeft oplossingen :-) ?

Acties:
  • 0 Henk 'm!

  • BernardV
  • Registratie: December 2003
  • Laatst online: 10-06 11:15
De standaard E.164 is internationaal een regex die dat pakt zal niet zomaar 06 nummers filteren, aangezien mobielenummers in het buitenland niet hoeven te beginnen met 06.

Acties:
  • +1 Henk 'm!

  • Orion84
  • Registratie: April 2002
  • Laatst online: 17:44

Orion84

Admin General Chat / Wonen & Mobiliteit

Fotogenie(k)?

Orion84 in "Regx; alleen 06 en alleen vaste nummers valideren via Regex" en nogmaals: wat heb je zelf allemaal al gezocht en gevonden en wat werkt daarvan wel/niet? Het is hier niet je persoonlijke helpdesk :)

The problem with common sense is that it's not all that common. | LinkedIn | Flickr


Acties:
  • +5 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Ik zou als ik jou was eens kijken naar libphonenumber i.p.v. als een holbewoner met een regex gaan zitten klooien ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Als het om filteren aan de voorkant gaat, dan kan je een format afdwingen. En gebeurt dat dan niet eerst (!) in bijv. JS?

Maar zoals gezegd: er zijn ook kortere nummers. Er zijn prima valide Nederlandse telefoonnummers van 5 cijfers. Ondanks nieuws: ACM: geen dreiging meer voor tekort aan 06-nummers zijn er geloof ik ook zat niet-06 mobiele nummers. Al is dat een uitzondering, misschien een waar je rekening mee moet houden.

En inderdaad heeft een niet_Nederlander geen idee wat een '06 nummer' is. Als je alleen +316... toestaat (of aan de voorkant daar naartoe vertaalt) wordt het al een stuk makkelijker.

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


Acties:
  • 0 Henk 'm!

Anoniem: 1111599

Topicstarter
RobIII schreef op dinsdag 13 november 2018 @ 12:44:
Ik zou als ik jou was eens kijken naar libphonenumber i.p.v. als een holbewoner met een regex gaan zitten klooien ;)
Dacht ik gisteravond ook is verrassend genoeg nog geen onderdeel van Google Form :( waarin de regex i.o. moet worden verwerkt.
https://github.com/search?q=libphonenumber
googlei18n/libphonenumber

Google's common Java, C++ and JavaScript library for parsing, formatting, and validating international phone numbers.

Acties:
  • +3 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Anoniem: 1111599 schreef op dinsdag 13 november 2018 @ 12:53:
Dacht ik gisteravond ook is verrassend genoeg nog geen onderdeel van Google Form :( waarin de regex i.o. moet worden verwerkt.
Wel, dan heb ik hier nog een tip: vermeld dat voortaan even in je topicstart; dat zitten mensen hun tijd niet te verdoen met een reactie tikken waar je niks mee kunt ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

Anoniem: 1111599

Topicstarter
@Orion84 Grappig. De hoofdvraag is zijn werkende regex om 06 en vaste nummers te valideren. zie boven. Volgens mij mis je iets dat andere hier niets mee kunnen.

Acties:
  • 0 Henk 'm!

  • Orion84
  • Registratie: April 2002
  • Laatst online: 17:44

Orion84

Admin General Chat / Wonen & Mobiliteit

Fotogenie(k)?

Anoniem: 1111599 schreef op woensdag 14 november 2018 @ 09:48:
@Orion84 Grappig. De hoofdvraag is zijn werkende regex om 06 en vaste nummers te valideren. zie boven. Volgens mij mis je iets dat andere hier niets mee kunnen.
Ik heb je reactie nu 3x gelezen, maar ik snap nog steeds niet wat je bedoelt. Wat is er grappig? Je vraag is duidelijk: je zoekt reguliere expressies om vaste en mobiele nummers te valideren. Wat mis ik?

Maar belangrijker: heb je nu al gekeken naar mijn suggesties in Orion84 in "Regx; alleen 06 en alleen vaste nummers valideren via Regex" ?

The problem with common sense is that it's not all that common. | LinkedIn | Flickr


Acties:
  • 0 Henk 'm!

  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 23:29
Anoniem: 1111599 schreef op woensdag 14 november 2018 @ 09:48:
@Orion84 Grappig. De hoofdvraag is zijn werkende regex om 06 en vaste nummers te valideren. zie boven. Volgens mij mis je iets dat andere hier niets mee kunnen.
Je had bijvoorbeeld kunnen zeggen dat de regex in Google Docs moeten kunnen werken. Er kunnen namelijk aardig wat verschillen zitten tussen verschillende regex implementaties.

Sinds de 2 dagen regel reageer ik hier niet meer


Acties:
  • 0 Henk 'm!

  • Freeaqingme
  • Registratie: April 2006
  • Laatst online: 01:48
Waarom wil je dit uberhaupt valideren? Ik heb recentelijk aan een project gewerkt (gebruikte ook libphonenumber iirc) waarbij uiteindelijk de klant er voor koos om telefoonnummers niet te valideren omdat gebruikers het niet "snapte". De ene vult in +31(0)612345678, de volgende maakt er van 06-123 456 78, etc. Bij dit project betrof het overigens ook een hoop buitenlandse gebruikers. Het zou kunnen dat als je alleen Nederlandse gebruikers hebt het anders is.

No trees were harmed in creating this message. However, a large number of electrons were terribly inconvenienced.


Acties:
  • 0 Henk 'm!

  • heuveltje
  • Registratie: Februari 2000
  • Laatst online: 17:08

heuveltje

KoelkastFilosoof

Freeaqingme schreef op woensdag 14 november 2018 @ 10:52:
Waarom wil je dit uberhaupt valideren? Ik heb recentelijk aan een project gewerkt (gebruikte ook libphonenumber iirc) waarbij uiteindelijk de klant er voor koos om telefoonnummers niet te valideren omdat gebruikers het niet "snapte". De ene vult in +31(0)612345678, de volgende maakt er van 06-123 456 78, etc. Bij dit project betrof het overigens ook een hoop buitenlandse gebruikers. Het zou kunnen dat als je alleen Nederlandse gebruikers hebt het anders is.
Niet de TS. maar ik heb dit ooit geprobeerd omdat die nr's automatisch ingevoerd en gebeld werden door een ander systeem. Uiteindelijk opgegeven, nederlandse nrs was al een hell om te doen, maar toen er ook nog buitenlandse nrs bijkwamen hield het echt op.

Je stript alle () en - eruit, vervangt + door 00 en hoopt op het beste :P de 1% die toch foutief is word achteraf handmatig aangepast als het opduikt.

Heuveltjes CPU geschiedenis door de jaren heen : AMD 486dx4 100, Cyrix PR166+, Intel P233MMX, Intel Celeron 366Mhz, AMD K6-450, AMD duron 600, AMD Thunderbird 1200mhz, AMD Athlon 64 x2 5600, AMD Phenom X3 720, Intel i5 4460, AMD Ryzen 5 3600 5800x3d


Acties:
  • 0 Henk 'm!

  • Marco de Graaf
  • Registratie: Januari 2021
  • Laatst online: 31-01-2021
Ik zou zelf dit gebruiken voor mobl.

code:
1
^(((\\+31|0|0031)6[ -]?){1}[1-9]{1}[0-9]{7})$


Dan ondersteund het ook een tussenstreepje of spatie na de 06

Acties:
  • 0 Henk 'm!

  • Vloris
  • Registratie: December 2001
  • Laatst online: 06-06 10:36
Is er een specifieke reden dat je alleen Nederlandse mobiele nummers wilt valideren?

Zoals je het nu omschrijft maak je de splitsing u tussen Nederlandse mobiele nummers en alle andere nummers.
Een buitenlands mobiel nummer zou dus wel geldig zijn, maar voor jou regel van vaste nummers.

Acties:
  • +1 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 03-06 14:21
Of een nummer 'echt' is is natuurlijk maar op 1 manier echt te valideren; een SMSje met een code sturen die ze in moeten voeren. Dus ik zou me vooral niet de druk maken over regular expressions als het heel belangrijk is dat het nummer 'echt' is. Zelfde als voor e-mail addressen geldt dus.

https://niels.nu


Acties:
  • 0 Henk 'm!

Anoniem: 1302638

Anoniem: 1111599 schreef op woensdag 14 november 2018 @ 09:48:
@Orion84 Grappig. De hoofdvraag is zijn werkende regex om 06 en vaste nummers te valideren. zie boven. Volgens mij mis je iets dat andere hier niets mee kunnen.
Belangrijker en tevens een stuk minder tijdrovend is als je begint met het oorspronkelijke probleem.

Jouw oplossing is een regex voor 06 nummers maarja je weet ook niet hoe dat werkt. Kortom je hebt van je oplossing een nieuw probleem gemaakt.

Kom nou es met je oorspronkelijke probleem.

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Laten we een topic van dik 2 jaar oud en waarvan TS al bijna twee jaar niet meer online is geweest maar lekker met rust :)

[ Voor 3% gewijzigd door RobIII op 31-01-2021 15:25 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij

Pagina: 1

Dit topic is gesloten.