Overzicht
Een praktische en veilige referentie voor reguliere expressies met hoge draagbaarheid.
Zonder vlaggen zoals (?s), (?m) of (?i), zodat patronen consistent werken op verschillende systemen en tools.
Regelafbrekingen en platformverschillen
| OS |
Regelafbreking |
Aanbevolen patroon |
Opmerking |
| Windows |
\r\n |
\r?\n |
Compatibel met CRLF/LF |
| macOS / Linux |
\n |
\r?\n |
Werkt op beide systemen |
Belangrijk
- Gebruik
\r?\n voor detectie/vervanging van regelafbrekingen — universeel toepasbaar.
- Voor blokextractie over meerdere regels gebruik
(?:.|\r|\n), omdat . geen nieuwe regel matcht.
Deel 1: Basisgrammatica (samenvattend)
1-1. Tekenklassen en bereiken
| Patroon |
Betekenis |
Voorbeeld |
Match |
. |
Elk teken behalve newline |
a.c / abc |
abc |
[abc] |
Eén van a, b of c |
bag |
a |
[^0-9] |
Niet-numeriek teken |
a1 |
a |
[A-Z0-9] |
Hoofdletter of cijfer |
X8z |
X, 8 |
1-2. Herhaling
| Patroon |
Betekenis |
Voorbeeld |
Match |
* |
0 of meer keer |
goooogle |
goooo |
+ |
1 of meer keer |
google |
oo |
? |
0 of 1 keer |
color colour |
Beide |
{n} |
Exact n keer |
a{3} / aaa |
aaa |
{n,} |
n of meer keer |
a{2,} / aaaa |
aaaa |
{n,m} |
n tot m keer |
a{2,4} / aaaaa |
aaaa |
1-3. Positieankers
| Patroon |
Betekenis |
Voorbeeld |
Match |
^abc |
Begin van regel |
abc\nzabc |
abc (eerste regel) |
abc$ |
Einde van regel |
zabc\nabc |
beide regels |
\bword\b |
Woordgrens |
word words |
word |
\Bing |
Niet-woordgrens |
ringing |
laatste ing |
1-4. Speciale tekens (afkortingen)
| Patroon |
Betekenis |
Voorbeeld |
Match |
\d |
Cijfer [0-9] |
ver2.10 |
2,10 |
\D |
Niet-cijfer |
a1 |
a |
\w |
Alfanumeriek/underscore |
a_b-1 |
a_b |
\W |
Niet-alfanumeriek |
a# |
# |
\s |
Witruimte |
a b |
spatie |
\S |
Niet-witruimte |
a b |
a,b |
\t |
Tab |
a\tb |
tab tussenin |
1-5. Escapes en symbolen
| Patroon |
Betekenis |
Voorbeeld |
Match |
\. |
Letterlijke punt |
a.c |
a.c |
\* |
Sterretje |
a*b |
a*b |
\+ |
Plus |
a+b |
a+b |
\? |
Vraagteken |
what? |
what? |
\( \) |
Haakjes |
(test) |
(test) |
| |
Pijpbalk |
`a |
b` |
\\ |
Backslash |
C:\\path |
\\ |
\^ |
Dakje |
^abc |
^abc |
\$ |
Dollar |
total$ |
$ |
\[ \] |
Vierkante haakjes |
[abc] |
[abc] |
\{ \} |
Accolades |
{a,b} |
{a,b} |
Deel 2: Groepering, alternatieven en lookahead/lookbehind
| Patroon |
Gebruik |
Voorbeeld |
Match |
(abc)+ |
Herhaling van groep |
abcabcx |
abcabc |
| `(?:jpg |
png)` |
Niet-capturerend OR |
file.png |
| `foo |
bar` |
OF-conditie |
bar |
\d+(?=€) |
Cijfers vóór euroteken |
Totaal100€ |
100 |
^(?!.*error).* |
Regel zonder “error” |
ok\nerror |
ok |
(?<=€)\d+ |
Na euroteken |
€300 |
300 |
(?<!Mr\.)\s[A-Z] |
Hoofdletter niet na “Mr.” |
Ms. Alice |
A |
Deel 3: Meerrijige patronen
| Doel |
Patroon |
Voorbeeld |
Match |
| HTML-blok |
`<div>(?:. |
\r |
\n)*?</div>` |
| Logregelblok |
`^[\d{4}-\d{2}-\d{2} [\d:]+](?:. |
\r |
\n)*?(?=^[\d{4}-\d{2}-\d{2} |
| Markdown-codeblok |
“ “`(?:. |
\r |
\n)*?“` “ |
| Commentaarblok |
`/*(?:. |
\r |
\n)*?*/` |
Deel 4: Veelgebruikte patronen
| Doel |
Patroon |
Voorbeeld |
Match |
| Alleen cijfers |
^\d+$ |
123 |
123 |
| Alleen alfanumeriek |
^[A-Za-z0-9]+$ |
user01 |
user01 |
| E-mailadres |
^[\w.-]+@[\w.-]+\.[A-Za-z]{2,}$ |
a@b.com |
a@b.com |
| URL |
https?://[\w.-]+\.[A-Za-z]{2,}(/[\w./?=&%-]*)? |
https://ex.com/a |
https://ex.com/a |
| ISO-datum |
\d{4}-\d{2}-\d{2} |
2025-10-30 |
2025-10-30 |
| Internationaal telefoonnummer |
\+\d{1,3}[\s-]?\d{1,14} |
+31 6 1234 5678 |
volledig |
| Sterk wachtwoord |
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d).{8,}$ |
Abcd1234 |
geheel |
| HTML-commentaar |
`<!–(?:. |
\r |
\n)*?–>` |
| Regel zonder “error” |
^(?!.*error).* |
ok\nerror |
ok |
Deel 5: Vervangingsvoorbeelden
| Taak |
Patroon |
Vervanging |
Invoer |
Uitvoer |
| Woorden omdraaien |
(\w+)\s+(\w+) |
${2} ${1} |
John Doe |
Doe John |
| Scheidingsteken wijzigen |
; |
, |
a;b;c |
a,b,c |
| Extra spaties verminderen |
\s{2,} |
|
a b |
a b |
| HTML-tags verwijderen |
<[^>]+> |
“ |
<p>a</p> |
a |
| Trim spaties |
`^\s+ |
\s+$` |
“ |
a |
| Nieuwe regels → spaties |
\r?\n |
|
a\nb |
a b |
| Commentaar verwijderen |
//.*$ |
“ |
x=1;//note |
x=1; |
| Datumformat wijzigen |
(\d{4})/(\d{2})/(\d{2}) |
${1}-${2}-${3} |
2025/10/30 |
2025-10-30 |
| Dubbele regels samenvoegen |
^(.*)(\r?\n\1)+$ |
${1} |
dubbele regels |
enkel regel |
Samenvatting
Reguliere expressies zijn krachtig en universeel toepasbaar voor scripts, loganalyse en gegevensverwerking.
Met deze draagbare patronen kun je veilig werken in elke omgeving, zonder afhankelijk te zijn van taal- of tool-specifieke vlaggen.