Snippets

osimis Version Parser

You are viewing an old version of this snippet. View the current version.
Revised by Thibault NĂ©lis 6bf5cd8
^(([[:digit:]]+(\.[[:digit:]]+)*)(-((-|[[:alnum:]])+))*)-0-g[a-f0-9]+$
#!/usr/bin/env bash
set -o errexit
[[ $1 ]] || exit 1
ver=$1
pattern=$(<parse-ver-pattern)
if [[ $ver =~ $pattern ]]; then
	number=${BASH_REMATCH[2]}
	tag=${BASH_REMATCH[5]}
	full=${BASH_REMATCH[1]}
	
	echo $number
	echo $tag
	echo $full
fi
#!/usr/bin/env bash

versions=(
	1.12.0.1-rc2-build42-0-gabcdef123456789
	0.2.0-0-g83d7b2f-dirty
	0.4.2-0-g0644e70
)

for v in ${versions[@]}; do
	echo "== $v"
	./parse-ver "$v"
	echo
done
HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.