Cookies op Tweakers

Tweakers is onderdeel van DPG Media en maakt gebruik van cookies, JavaScript en vergelijkbare technologie om je onder andere een optimale gebruikerservaring te bieden. Ook kan Tweakers hierdoor het gedrag van bezoekers vastleggen en analyseren. Door gebruik te maken van deze website, of door op 'Cookies accepteren' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt? Bekijk dan ons cookiebeleid.

Meer informatie
Toon posts:

Regx; alleen 06 en alleen vaste nummers valideren via Regex

Pagina: 1
Acties:
  • 2.219 views

Vraag


  • codingmoeder
  • Registratie: september 2018
  • Laatst online: 30-03-2019
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


  • Orion84
  • Registratie: april 2002
  • Laatst online: 17:03

Orion84

Admin General Chat

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


  • 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.

  • codingmoeder
  • Registratie: september 2018
  • Laatst online: 30-03-2019
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]

  • CurlyMo
  • Registratie: februari 2011
  • Laatst online: 17:14

CurlyMo

www.pilight.org

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 :) ?

geen vragen via PM die ook op het forum gesteld kunnen worden.


  • jip_86
  • Registratie: juli 2004
  • Laatst online: 16:14
Waarom wil je eigenlijk dat onderscheid kunnen maken?

  • heuveltje
  • Registratie: februari 2000
  • Laatst online: 08:43

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]

You cant build a better world for people.
Only people can build a better world for people.
Otherwise its just a fancy cage. T. Pratchett


  • codingmoeder
  • Registratie: september 2018
  • Laatst online: 30-03-2019
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 :-) ?

  • BernardV
  • Registratie: december 2003
  • Laatst online: 13-06 10:11
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.

  • Orion84
  • Registratie: april 2002
  • Laatst online: 17:03

Orion84

Admin General Chat

Fotogenie(k)?

codingmoeder schreef op dinsdag 13 november 2018 @ 12:33:
ontopic: wie heeft oplossingen :-) ?
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


  • RobIII
  • Registratie: december 2001
  • Laatst online: 17:09

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

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.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij


  • 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)


  • codingmoeder
  • Registratie: september 2018
  • Laatst online: 30-03-2019
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.

  • RobIII
  • Registratie: december 2001
  • Laatst online: 17:09

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

codingmoeder 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.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij


  • codingmoeder
  • Registratie: september 2018
  • Laatst online: 30-03-2019
@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.

  • Orion84
  • Registratie: april 2002
  • Laatst online: 17:03

Orion84

Admin General Chat

Fotogenie(k)?

codingmoeder 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


  • CurlyMo
  • Registratie: februari 2011
  • Laatst online: 17:14

CurlyMo

www.pilight.org

codingmoeder 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.

geen vragen via PM die ook op het forum gesteld kunnen worden.


  • Freeaqingme
  • Registratie: april 2006
  • Nu online
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.


  • heuveltje
  • Registratie: februari 2000
  • Laatst online: 08:43

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.

You cant build a better world for people.
Only people can build a better world for people.
Otherwise its just a fancy cage. T. Pratchett


  • Marco de Graaf
  • Registratie: januari 2021
  • Laatst online: 31-01 15:24
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

  • Vloris
  • Registratie: december 2001
  • Laatst online: 15:00
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.

  • Hydra
  • Registratie: september 2000
  • Laatst online: 16:34
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


  • KelvinX
  • Registratie: december 2019
  • Niet online
codingmoeder 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.

  • RobIII
  • Registratie: december 2001
  • Laatst online: 17:09

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

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.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij

Pagina: 1

Dit topic is gesloten.



Apple iPad Pro (2021) 11" Wi-Fi, 8GB ram Microsoft Xbox Series X LG CX Google Pixel 5a 5G Sony XH90 / XH92 Samsung Galaxy S21 5G Sony PlayStation 5 Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2021 Hosting door True