Almost two years ago I did some scripting of updating debian/changelog and building a package to enable a CI environment for some software. I wanted to parse the changelog correctly and so I copied and changed some perl from the source of dpkg-buildpackage. This turned out to be the wrong solution.
There is a nice tool called dpkg-parsechangelog. You can get just the version for use in scripts with this simple awk:
dpkg-parsechangelog | awk ‘/Version/ { print $2 }’
I didn’t even think to write about it until I ran across someone else who’d written some perl to do exactly the same thing. Dear world, we need to stop reinventing this wheel.