Yes, regexes would be tedious.
I’d look at this as a mini-language and use lexing and parsing tools. Should be able to do it very cleanly with flex or JLex.
One nice thing about the parser approach would be the ease of rejecting or handling unknown or creative call sign usage, like amateurs who like to use /MM for “maritime mobile”. As they show up, I’d add special handling to get those right.
Under the hood, regexes and JLex both create finite state machines, so they would be similarly fast.
I did something similar for TTL and JAN part numbers about twenty years ago. One of our search engine customers was a semiconductor vendor.
wunder