Als je de basis kent, kan je al heel veel bereiken:
. -> echt eender welk karakter
\s -> alle whitespace karakters (spatie, tab, carriage return, linefeed)
\w -> alles alfanumeriek
\d -> alles numeriek
\s{2} -> exact twee willekeurige whitespace-karakters
\w{5,} -> vijf of meer willekeurige alfanumerieke karakters
[125abc] -> elk karakter dat gelijk is aan een karakter in deze willekeurige verzameling
[a-z] -> alle kleine kleine letters, aangegeven als een bereik, omdat die mooi op elkaar volgen
[5-9] -> alle cijfers van vijf tot en met negen
[
^a-z]{1,3} -> één tot drie karakters die eender wat mogen zijn, BEHALVE kleine letters
.+ -> één of meer eender welke karakters
.* -> nul of meer eender welke karakters, probeer de grootst mogelijke substring te matchen (bv: voor string "<a>tekst</a>" zal de regex "<.*>" de hele string matchen )
.*
? -> nul of meer eender welke karakters, probeer de kleinst mogelijke substring te matchen (bv: voor string "<a>tekst</a>" zal de regex "<.*?>" enkel "<a>" matchen, dus niet de hele string zoals hierboven)
(.*) -> gaat de match van .* in een capture group plaatsen voor wanneer je een find&replace wilt doen, bv: voor string "(Familie) Uitstap Efteling (2018-03-17)" kan je volgende regex-replace gebruiken om de string te herschrijven (let op het escapen van de haakjes, daardoor kan je matchen op haakjes ipv die gebruiken als capture group): "\(.*?\) (.*) \((\d{4}-\d{2}-\d{2})\)" replacen met "$2 - $1" om er "2018-03-17 - Uitstap Efteling" van te maken
Er is ontzettend veel materiaal over te vinden, ook om eerste stappen te zetten in regex.
[Reactie gewijzigd door RuddyMysterious op 22 juli 2024 21:38]