in reply to Would you use 'goto' here?
To me this really seems to be a case for using if/else contructs. One question though, why aren't you checking for the officeID outside of the sub? Since you are apparently checking other things before to determine which sub to call...
perl -p -e "s/(?:\w);([st])/'\$1/mg"