Modulelessen (2/4)
Basisklassen: \d \w \s
Naast letterlijke tekens geeft regex u vooraf gedefinieerde klassen: snelkoppelingen voor "elk cijfer", "elk woordteken", "elke witruimte". Zij zijn de eersten stap richting echt bruikbare patronen.
| Klasse | Komt overeen |
|---|---|
\d | Een cijfer (0-9) |
\w | Een woordteken (A-Za-z0-9_) |
\s | A witruimte (spatie, tab, nieuwe regel, etc.) |
\D | NIET een cijfer |
\W | NIET een woordteken |
\S | NIET een spatie |
Elk komt overeen met één enkel karakter. Om 'een of meer tekens' te matchen
je hebt kwantoren nodig (+, in module 2), maar we zullen meteen + gebruiken
omdat "vind mij alle cijfers" te nuttig is om op te wachten.
Pattern: \d+
Sample: Ho 3 mele, 12 pere e 100 prugne.
^ ^^ ^^^\d+ betekent een of meer opeenvolgende cijfers: het komt overeen met 3, 12 en
100 als drie afzonderlijke wedstrijden (met de vlag g).
\w: woordtekens
\w is gelijk aan [A-Za-z0-9_] (ASCII-letters, cijfers, onderstrepingsteken). Het
bevat GEEN accenten, Griekse letters of emoji: daarvoor heb je Unicode nodig
eigenschap-escapes (\p{L}, module 5).
Duik diep in basisklassen en ontkenningen
Vooraf gedefinieerde klassen \\d, \\w, \\s versnellen het coderen. Versies in hoofdletters (\\D, \\W, \\S) maken de set ongeldig. Met \\S+ legt u bijvoorbeeld elk tekstblok vast zonder spaties (zoals hele woorden inclusief interpunctie).
De engine verwerkt \\s door niet alleen de standaardspatie te matchen, maar ook tabs (\\t) en nieuweregeltekens (\\n of \\r).
Probeer het
Haal elke reeks opeenvolgende cijfers (cijfers) uit de tekst. Gebruik de klasse `\\d` met de kwantor `+`.
Toon hint
\\d+ legt een of meer cijfers vast. Met de g-vlag verzamel je elke wedstrijd.
Oplossing beschikbaar na 3 pogingen
Oefening beoordelen
Vind elk 'woord' in de tekst: een aaneengesloten reeks woordtekens (`\\w+`).
Toon hint
\\w+ komt overeen met reeksen letters/cijfers/onderstrepingstekens. Interpunctie wordt overgeslagen.
Oplossing beschikbaar na 3 pogingen
Extra uitdaging
Find all sequences of one or more consecutive whitespace characters in the text (including spaces, tabs, and newlines).
Toon hint
Gebruik de klasse \\s met de kwantor + om opeenvolgende witruimtereeksen vast te leggen.
Oplossing beschikbaar na 3 pogingen