Hey, Andrew. It was the YCC (Y Chromosome Consortium) that developed the first haplogroup naming convention...the capital letter of the top-level haplogroup followed by a slew of numerals and letters. That's typically referred to as "YCC longhand nomenclature." As you noted, "YCC shorthand nomenclature" uses that same first capital letter, but then follows it with a defining terminal SNP for a particular subclade.
With the speed of growth of the yDNA haplotree thanks to the Big Y and other full sequence testing, the YCC longhand format was becoming simply too unwieldy to keep up with, much less to write out fully in papers or communications. I'm unaware of any simple way to programmatically associate longhand and shorthand names. The haplotree that the ISOGG maintains still uses the longhand form as the primary hierarchy, and shows--at least some of--the known defining SNPs for each branch: https://isogg.org/tree/.
At issue is that there is no governing entity that actually controls which SNPs are the subclade-defining ones, or even, for that matter, which SNP names are used. That's one reason the ISOGG tree is almost always well behind what you'll find at FTDNA or Yfull...and it's worth mentioning that those latter two are quite frequently in disagreement about establishing defining SNPs, particularly for the more recent branches of the haplotree.