abc_123 format cannot handle distinguishing which of the parameters is multiple digits. For exampe is abc_1234 the case of a=1, b=2, c=34, or is it a=1, b=23, c=4, or is it a=12, b=3, c=4 ?
a1_b2_c3 requires either that the variable name is always a single character, or else that you search each of the part to find the last string of digits -- to break apart the 2 from the b2 for example. This could present difficulties if any of the variable names end in a digit.
a_1_b_2_c_3 permits easy splitting of the string by _ character and permits flexibility in parameter values, but does assume that none of the variable names includes an underscore.