Wiktionary
old soldier
n. 1 A former soldier, or one who has served for a long time. (from 17th c.) 2 Someone with a lot of experience in something; an old hand. (from 18th c.) 3 (context US slang English) The butt of a smoked cigar, or an empty bottle of liquor. (from 19th c.)