'Best way to sort BOTH prefix and suffix with custom sorting

So I have a list of codes, something like:

(I.-) (I.+) (I.0) (B.+) (B.0) (B.-) ... (No value) (N/A)

I was able to sort them but we have a "custom requirement" that "-" comes before "1" and "1" comes before "+". All others without prefix and suffix will be on the bottom.

Is there a way to sort them to make the above look like: (B.-) (B.0) (B.+) (I.-) (I.0) (I.+) ... (No value) (N/A)



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source