Wat zijn regular expressions?

Een regular expression, meestal afgekort tot regex of regexp, is een zoekpatroon die je op een tekst kunt loslaten. Een regex kan heel simpel zijn; regex bijvoorbeeld zal in een tekst zoeken naar het woord regex.

Iets complexer: ^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$.
Deze regex zal kijken of een string begint met een aantal letters, cijfers, punten, underscores, procent- en min-tekentjes, met daarna een @ teken, daarna weer een aantal cijfers, letters, punten of min-tekentjes, een punt, en daarna nog 2 tot 4 letters. Of: een email adres. Dit gebruikt men om te controleren of een opgegeven email in een formulier wel geldig is. Deze regex zal echter falen op adressen als jan@met.de.pet.be, of jan@pet.info, wat perfect valide, maar weinig gebruikte adressen zijn.

Om aan te tonen hoe complex dit kan worden; de “perfecte” email regex is 6343 karakters lang.. deze volgt helemaal strikt RFC 822, de vastgelegde norm zeg maar van wat een geldig email adres is. Dit simpele voorbeeld van een email regex heeft intussen al voor ettelijke uren discussie gezorgd op ‘geek’ forums en chatkanalen.

Het is een feit dat dit zeer complexe materie kan zijn, maar het is dan ook enorm krachtig. Je kunt ermee zeer snel en doeltreffend stukken tekst opzoeken of vervangen, zelfs in honderden bestanden tegelijk. Voor een programmeur is het dan ook iets zeer handigs om onder de knie te hebben.

Meer lezen?

Reacties

Reageer als eerste!

Geef je mening… don't be shy

  • http://

Feed the primates

Wij hebben grote honger naar nieuwe projecten. Ook voor uw project leggen wij de lat heel hoog. Samenwerken? Stuur een berichtje. Of bel 09 395 02 51.

Een idee voor een nieuw project? We zijn benieuwd