In bash script, what is the easy way to extract a text pattern from a string?
For example, I want to extract X followed by 2 digits in the end of the string?
X
There's a nifty =~ regex operator when you use double square brackets. Captured groups are made available in the $BASH_REMATCH array.
=~
$BASH_REMATCH
if [[ $STRING =~ (X[0-9]{2})$ ]]; then echo "matched part is ${BASH_REMATCH[1]}" fi
2.1m questions
2.1m answers
60 comments
57.0k users