# # in : a name # out : the prefix (or "" if none) in array pos 0 and the # name (always present) in array pos 1. # # Understands the following forms: # # 2 name # 1/2 name or 1\2 name # (N+1) name # 2M name or 2N name # M name or N name # sub get_name_parts($) { ($_) = @_; if (m!^(\d+|\d+[\\/]\d+|\(N\+1\)|\d*[MN])\s(.+)!i) { return ($1, $2); } else { return ("", $_); }; }