Modules/Regexp-0
Inleiding
Deze module gaat over reguliere expressies. Als je nog niets over reguliere expressies weet, dan is de Wikipedia-entry een goed (en erg uitgebreide) inleiding. Je gebruikt reguliere expressies vaak als je data in tekst-formaat moet verwerken tot data met meer structuur, bijvoorbeeld in tabel-formaat (CSV, e.d.). Het is één van de gereedschappen voor "Data Science" - maar ook voor veel andere toepassingen.
Deze module bestaat uit de volgende onderdelen:
- een kennismaking met reguliere expressies
- een tutorial
- oefeningen
- een demonstratie van je kunnen - in een praktisch programma.
Je moet je docent/begeleider kunnen laten zien dat je deze stof beheerst.
Gebruik van reguliere expressies
Reguliere expressies worden op veel verschillende manieren gebruikt. Het doel van deze opdracht is om te verkennen waar reguliere expressies zinvol toegepast kunnen worden.
Hints:
- Wikipedia-entry
- Zoeken op Google
- Inleiding van een tutorial
Opdracht: geef 5 verschillende voorbeelden van het gebruik van reguliere expressies. Tenminste 2 hiervan moeten niet-triviale reguliere expressies zijn, afkomstig zijn uit een niet-triviaal programma op GitHub.
Tutorial
Oefeningen
Demonstratie
Maak een programma (in Python of in JavaScript) waarin je reguliere expressions op een zinvolle en niet-triviale manier gebruikt. Je kunt bijvoorbeeld denken aan:
- het verwerken van een logfile (bijv. van een webserver): omzetten van logfile in een bestand met meer structuur, bijv. in CSV formaat
- het valideren van input, bijvoorbeeld van een datum, telefoonnummer, enz.
Links
- (en) Wikipedia: https://en.wikipedia.org/wiki/Regular_expression
- (en) http://cammoore.github.io/ics215f14/modules/module-regular-expression
- (en) interactive tutorial, practice problems: http://regexone.com
- (en) tutorial ("55 minutes"): http://qntm.org/files/re/re.html
- (en) de website over reguliere expressies: http://www.regular-expressions.info
- (en) interactive tool: http://www.regexr.com
- (en) JavaScript regular expressions: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions
- (en) JavaScript regular expressions: http://www.w3schools.com/jsref/jsref_obj_regexp.asp
- (en) Python regular expressions: https://developers.google.com/edu/python/regular-expressions
Eigenschappen
- voorkennis: Git-0 (gebruik van GitHub); Python of JavaScript-programmeren;