Modules/Regexp-0: verschil tussen versies
Geen bewerkingssamenvatting |
Geen bewerkingssamenvatting |
||
(15 tussenliggende versies door een andere gebruiker niet weergegeven) | |||
Regel 1: | Regel 1: | ||
{{Module-status | |||
|status=Alpha | |||
|auteur= [[Gebruiker:Eelco|Eelco Dijkstra]] | |||
|badge=[[Badges/Regexp-0-0|Regexp-0]] | |||
}} | |||
{{Zijbalk Modules}} | |||
== 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 (op je wiki-pagina met uitwerkingen) beknopt verslag doen van wat je gedaan hebt. Deze wiki-pagina moet ook (i) een link bevatten naar het bestand met de source-code van het programma dat je gemaakt hebt, en (ii) bijbehorende voorbeeld-invoer en uitvoer. | |||
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 == | == Tutorial == | ||
Verwerk de stof van het tutorial: http://regexone.com, en werk dit uit in een eigen voorbeeld in één van de talen Python of JavaScript. | |||
Je mag ook een ander tutorial gebruiken, als dat een vergelijkbaar eindniveau heeft. | |||
P.S. geef aan welk(e) tutorial(s) je gebruikt hebt, en wat je daar goed en eventueel minder goed aan vond. Geef ook aan hoeveel tijd je daaraan besteed hebt. Als je een specifiek onderdeel lastig vond, geef dat dan aan in je verslag. | |||
== Oefeningen == | == Oefeningen == | ||
Sommige van deze tutorials bevatten ook grotere oefeningen, zie bijvoorbeeld: | |||
Werk de oefeningen uit van: http://regexone.com/problem/matching_decimal_numbers (en volgende). | |||
== Demonstratie == | == Demonstratie == | ||
Regel 8: | Regel 50: | ||
Je kunt bijvoorbeeld denken aan: | 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 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 == | == Links == | ||
* (en) Wikipedia: https://en.wikipedia.org/wiki/Regular_expression | |||
* (en) http://cammoore.github.io/ics215f14/modules/module-regular-expression | * (en) http://cammoore.github.io/ics215f14/modules/module-regular-expression | ||
* (en) interactive tutorial, practice problems: http://regexone.com | * (en) interactive tutorial, practice problems: http://regexone.com | ||
Regel 19: | Regel 63: | ||
* (en) JavaScript regular expressions: http://www.w3schools.com/jsref/jsref_obj_regexp.asp | * (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 | * (en) Python regular expressions: https://developers.google.com/edu/python/regular-expressions | ||
== Eigenschappen == | |||
* voorkennis: Git-0 (gebruik van GitHub); Python of JavaScript-programmeren; | |||
* Auteur: [[heeft-auteur:: Gebruikers:Eelco]] | |||
* Badge: [[voor-badge:: Badges/Regexp-0]] |
Huidige versie van 16 mrt 2016 om 15:02
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 (op je wiki-pagina met uitwerkingen) beknopt verslag doen van wat je gedaan hebt. Deze wiki-pagina moet ook (i) een link bevatten naar het bestand met de source-code van het programma dat je gemaakt hebt, en (ii) bijbehorende voorbeeld-invoer en uitvoer.
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
Verwerk de stof van het tutorial: http://regexone.com, en werk dit uit in een eigen voorbeeld in één van de talen Python of JavaScript.
Je mag ook een ander tutorial gebruiken, als dat een vergelijkbaar eindniveau heeft.
P.S. geef aan welk(e) tutorial(s) je gebruikt hebt, en wat je daar goed en eventueel minder goed aan vond. Geef ook aan hoeveel tijd je daaraan besteed hebt. Als je een specifiek onderdeel lastig vond, geef dat dan aan in je verslag.
Oefeningen
Sommige van deze tutorials bevatten ook grotere oefeningen, zie bijvoorbeeld:
Werk de oefeningen uit van: http://regexone.com/problem/matching_decimal_numbers (en volgende).
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;
- Auteur: Gebruikers:Eelco
- Badge: Badges/Regexp-0