Nederlandse postcode check in regular expression (JavaScript) waarbij laatste twee letters optioneel

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Salvatore Luciano

Salvatore Luciano

03/09/2016 18:02:44
Quote Anchor link
Ik heb de volgende regular expression in JavaScript gevonden om Nederlandse postcodes te kunnen valideren:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
/^[1-9][0-9]{3} ?(?!sa|sd|ss)[a-z]{2}$/i;


Nu wil ik dit graag ombouwen zodat de laatste 2 letters niet verplicht zijn, maar als ze er dan wel zijn, mag het niet "SA", "SD" of "SS" zijn.
Gewijzigd op 03/09/2016 18:10:16 door Salvatore Luciano
 
PHP hulp

PHP hulp

22/12/2024 17:50:47
 
Jan R

Jan R

03/09/2016 18:29:05
Quote Anchor link
zip codes en postcodes zijn verschillende zaken. Afzonderlijk opslaan en controleren is beter. Wat als je ooit internationaal werkt.
Er zijn niet altijd zipcodes dan

Ik controleer via een piclist met http://www.geonames.org


Werkt niet onder htpps :(
Gewijzigd op 04/09/2016 08:03:06 door Jan R
 
Salvatore Luciano

Salvatore Luciano

03/09/2016 19:44:31
Quote Anchor link
Hoi Jan, bedankt voor je reactie. Ik begrijp je punt, echter wil ik toch nog weten hoe je dit in regular expressions zou kunnen oplossen. Heb er zelf al een tijdje aan gesleuteld maar kom er niet uit. Dus als iemand ideeën heeft, welkom!
 
Willem vp

Willem vp

04/09/2016 14:18:47
Quote Anchor link
Kwestie van de spatie en de twee letters groeperen met haakjes en die groep optioneel maken met een vraagteken:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
/^[1-9][0-9]{3}(\s?(?!sa|sd|ss)[a-z]{2})?$/i

Nog iets beter is het om er met ?: een non-capturing group van te maken, omdat je in dit geval geen gebruik gaat maken van backreferences:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
/^[1-9][0-9]{3}(?:\s?(?!sa|sd|ss)[a-z]{2})?$/i

Ten opzichte van je oorspronkelijke regex heb ik de spatie veranderd in een \s. Om verschillende redenen is het gebruik van spaties in reguliere expressies niet handig/aanbevolen.
 



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.