Regular Expressions Referentie
Regular Expressions, of regex, zijn krachtige tools die worden gebruikt om patronen in tekst te identificeren en te manipuleren. Reflex Blue gebruikt regex op verschillende plekken, zoals bij het valideren van teksttype Dynamische Velden of bij het definiëren van bestandsmaskers in de Import/Export Service.
Basiscomponenten van Regular Expressions
Hieronder bekijken we de basiscomponenten die de fundamenten van regex-patronen vormen.
1. Literalen
Literalen matchen de exacte tekens die ze vertegenwoordigen.
Het regex-patroon cat matcht de string “cat” precies.
2. Metatekens
Metatekens zijn symbolen die speciale betekenissen in regex vertegenwoordigen.
-
.(Punt): Matcht elk enkel teken behalve een nieuwe regel.Het regex-patroon
c.tmatcht “cat”, “cut”, “cot”, enz. -
\d: Matcht elk cijfer (0-9).Het regex-patroon
\d\dmatcht “12”, “34”, enz. -
\w: Matcht elk woordteken (alfanumeriek of onderstrepingsteken).Het regex-patroon
\w\w\wmatcht “abc”, “123”, enz. -
\s: Matcht elk witruimte-teken (spaties, tabs, enz.).Het regex-patroon
a\s\sbmatcht “a b” (twee spaties). -
\b: Matcht een woordgrens.Het regex-patroon
\bcat\bmatcht “cat” in “a cat is here”, maar niet in “caterpillar”.
3. Kwantificatoren
Kwantificatoren specificeren hoeveel instanties van een teken, groep of tekenklasse aanwezig moeten zijn in de invoer om een match te vinden.
-
*: Matcht 0 of meer keren.Het regex-patroon
ca*tmatcht “ct”, “cat”, “caaat”, enz. -
+: Matcht 1 of meer keren.Het regex-patroon
ca+tmatcht “cat”, “caat”, maar niet “ct”. -
?: Matcht 0 of 1 keer.Het regex-patroon
ca?tmatcht “cat” of “ct”. -
{n}: Matcht preciesnkeren.Het regex-patroon
a{3}matcht “aaa”. -
{n,m}: Matcht tussennenmkeren.Het regex-patroon
a{2,4}matcht “aa”, “aaa”, of “aaaa”.
4. Tekenklassen
Tekenklassen stellen je in staat om een set van tekens te definiëren die op een bepaalde positie in de invoer kunnen matchen.
-
[abc]: Matcht elk van de tekens a, b, of c.Het regex-patroon
[ch]atmatcht “cat” en “hat”. -
[^abc]: Matcht elk teken behalve a, b, of c.Het regex-patroon
[^ch]atmatcht “bat”, “sat”, maar niet “cat” of “hat”. -
[a-z]: Matcht elke kleine letter.Het regex-patroon
[a-z]matcht elke kleine letter van “a” tot “z”. -
[A-Z]: Matcht elke hoofdletter.Het regex-patroon
[A-Z]matcht elke hoofdletter van “A” tot “Z”.
5. Ankers
Ankers bevestigen een positie in de invoertekst, in plaats van een specifiek teken te matchen.
-
^: Matcht het begin van een string.Het regex-patroon
^catmatcht “cat” alleen als het aan het begin van de string staat. -
$: Matcht het einde van een string.Het regex-patroon
cat$matcht “cat” alleen als het aan het einde van de string staat.
6. Groepen en vastleggen
Groepen stellen je in staat om delen van een regex-patroon samen te voegen. Vastleggroepen slaan ook de gematchte tekst op voor later gebruik.
-
()(Haakjes): Groepeert meerdere tokens en creëert een vastleggroep.Het regex-patroon
(abc)+matcht “abc”, “abcabc”, enz. -
(?: )(Niet-vastleggroep): Groepeert meerdere tokens zonder een vastleggroep te creëren.Het regex-patroon
(?:abc)+matcht “abc”, “abcabc”, enz., maar legt de match niet vast.
7. Alternatie
Alternatie stelt je in staat om het ene patroon of het andere te matchen.
-
|: Gedraagt zich als een logische OF.Het regex-patroon
cat|dogmatcht ofwel “cat” of “dog”.
8. Escapen van speciale tekens
Als je een speciaal teken letterlijk wilt matchen, moet je het escapen met een backslash \.
Het regex-patroon \. matcht een letterlijke punt in plaats van elk teken.
Online bronnen voor het leren van regex
Als je je begrip van regex wilt verdiepen, zijn hier enkele uitstekende online bronnen:
Meer in deze rubriek
- Documentsjablonen
- GS1 Data Matrix
- Gevaaranalyse en Kritische Controlepunten
- Dynamische velden
- Integratie
- Offertes
- Rapport Functies
- Regular Expressions
- Export script voorbeelden
- Instellen van tijdschema's voor geplande taken via een CRON expressie
- Rapport velden