Nee, het is gisteren niet zo laat geworden. Het Tech-Ed feestje was wel aardig, maar ik ben toch maar wat vroeger naar huis gegaan. Dus tijdens de sessie van Roy Osherove over reguliere expressies was ik redelijk wakker. En dat is, bij zo'n onderwerp, wel zo prettig.
Nu is het geen geheim dat reguliere expressies erg krachtig zijn. Maar ook... onleesbaar. Dat wil zeggen, ik kan het bijna niet lezen. Ik gebruik het niet dagelijks, en opbouwen van een reguliere expressie 'from scratch' valt dan niet mee. André Obelink heeft er een artikel over staan.
We gebruiken reguliere expressies voor:
- validatie van tekst
- manipulatie van tekst
- parsen van tekst (voor zoeken, screen scraping, gegevensverzameling)
Een paar lijstjes van de slides.
Enclosing Alternatives with []
- [Cc] Capital or lowercase c
- [A-Z] Any capital letter A through Z
- [A-Za-z] Any capital or lowercase letter
- [0-9] Any digit 0 through 9
- [A-Za-z0-9] Any letter or digit
- [0-9.+-&=%] Any digit or special char listed
frequency operators
- ? 0 or 1
- * 0 or more
- + 1 or more
Convenience expressions
- \d Any digit
- \D Any non-digit
- \s Any whitespace character (such as a space or tab)
- \S Any character other than a whitespace character
- \w Any number or letter
- \W Any character other than a number or letter
Roy laat een aantal simpele, oké niet allemaal even simpel, maar doeltreffende demos zien. Waar het eigenlijk op neer komt is dat je reguliere expressies moet leren, zoals je een taal als SQL, XPath of XSLT leert. En zo beschouwd, is de drempel om reguliere expressies gebruiken niet meer zo hoog.
Handige links: