K9104 Regular Expressions kursus – Regulære udtryk

Blive klædt på med et Regular Expressions kursus. Lær at matche. Få styr på at finde komplekse mønstre og sammenhænge i større tekster med avancerede teknikker…

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