Regular Expressions – Regulære Udtryk – RegEx
Regular Expressions benyttes i et væld af systemer, platforme og programmeringssprog. F.eks. .Net, Java, XML og mange andre steder.
Målgruppe for RegEx kursus
Kurset henvender sig til udviklere og andre, der ønsker en dybere viden om Regular Expressions.
Bestilles kurset som et lukket kursus, og I ønsker at nå helt ud i alle hjørner af Regular Expressions, anbefaler vi, at kurset kører over mindst 2 dage. Men kontakt os, hvis du er i tvivl.
Forudsætninger for kurset
Det kræver ingen specielle forudsætninger at deltage i dette kursus.
Da Regular Expressions oftest er en indlejret del af et andet programmeringssprog kan dine forudsætninger være mange.
Regular Expressions benyttes i XML, Java, .NET, Javascript og mange andre steder.
Efter kurset kan du
Du får en dyb og bred viden om Regular Expressions. Igennem hands-on øvelser kommer du ud i alle hjørner af Regular Expressions.
Indhold af Regular Expressions – Regulære udtryk kurset
1 | Introduktion til Regular Expressions
- Intro til RegEx
- Opsætning af ressourcer
- RegEx Engines – forskellig tolkning af RegEx-kode – flavours og engines. Kort demo af RegEx i C#.net, VBA, Php og PowerShell
2 | Grundlæggende syntaks
- Almindelig Tekst – literal text
- Punktum, Asterix, Spørgsmålstegn, Circumfleks
- Karakterklasser – herunder class subtraction
- Danske bogstaver
- Shorthand koder
- Brug af backslash
3 | Ankre og Ordgrænser
- Dots og Anchors, plus \A og \z, Multiline Modifier
- Simple Quantifiers – herunder Quantifiers Ranges
- Ordgrænser, Boundaries, fange ord, fange mellemrum
- Definition af egne tegnadskillelse
4 | Problemet med Quantifiers
- Eager – RegEx er Eager – hvad betyder det?
- Alternations, Pipes, Lazy Alternations – og alternativer til disse
- Quantifiers Avanceret – herunder backtracking
- Greedy vs. Lazy/Reluctant
- Possessive Quantifiers og Atomic Groups
- Catastrofic Backtracking – simpelt regex udtryk på under 20 karakterer, der laver over 1 mio beregninger. Eksempel på hvordan man IKKE skal lave RegEx.
5 | Syntaktiske finurligheder
- \Q og \E
- Kommentarer
- Mode Modifiers – betydning og 3 forskellige syntaksformer
- Betinglerser. If og If-else
6 | Grupper
- Grupper, Capturing
- Backreferencer
- Brug af parenteser – prioritering
- Udtrækning af gruppers værdier som array – illustreret med php
- Grupper med navne
- Non-Capturing Grupper
- Branch Reset Grupper
7 | LookArounds
- Lookarounds – Herunder gentagne Lookarounds på samme indsætningspunkt
- Analyse af password – skal være mindst 10 karakterer, have 3 uppercases, 1 specialkarakter og 2 tal
- Unicode Code Point, til specialkarakterer, \u \x \c – specialtegn, genvejstaster m.v.
8 | Free-Space Mode
- Oprettelse af DEFINES på 2 forskellige måder. (RegEx’s svar på funktioner)
9 | Subrutiner og Recursive kald
- Subrutiner – genbrug af koder
- Recursive Subrutiner – recursiv reference til sig selv (enten gruppe+subrutine eller hele udtrykket ?R og ?0)
10 | Debugging, Performance m.m.
- Debugging
- Performance
- XML og Regular Expressions
Forskellige varianter af RegEx
Der findes flere andre RegEx-sprog – f.eks. Berkeley – som syntaktisk er bygget helt anderledes op. RegEx-Kurset kan afholdes i en sådan variant – f.eks. Berkeley.
Men som udgangspunkt afholdes dette kursus i standard Regular Expressions (PRCE), som er den mest benyttede. Instruktøren sørger for, at den rigtige flavor benyttes på kurset