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?
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?
There's a nifty =~
regex operator when you use double square brackets. Captured groups are made available in the $BASH_REMATCH
array.
if [[ $STRING =~ (X[0-9]{2})$ ]]; then
echo "matched part is ${BASH_REMATCH[1]}"
fi