Bash:
Reguliere expressies gebruiken
Hoe te:
# Een patroon matchen
echo "I love to code in Bash" | grep -oP 'code'
# Uitvoer:
code
# String vervangen met regex met sed
echo "Bash 2023" | sed -E 's/[0-9]+/2024/'
# Uitvoer:
Bash 2024
# Substring extraheren met regex
echo "Error: Line 42" | grep -oP '(?<=Line )\d+'
# Uitvoer:
42
Diepere Duik
Reguliere expressies bestaan al sinds de jaren 1950, oorspronkelijk bedacht door wiskundige Stephen Kleene. Alternatieven voor Bash regex zijn het gebruik van awk
of perl
, die hun eigen regex-mogelijkheden hebben. Uitvoeringsgewijs gebruikt Bash grep voor matching, sed
voor vinden-en-vervangen, en de =~
operator binnen [[ ]]
voor conditionals. Wees je bewust dat regex kan variëren tussen tools (grep
, egrep
, sed
, en awk
), dus ken de smaak waarmee je werkt.