Table Sort by custom value

I want to sort a column that is a string by a value that I compute from that value. For example, we want to display "2 - 10 years of experience" and "11 - 20 years of experience" as values to a column "Experience". Sorting on this column puts "11-20" before "2-10" because it takes the first character "1" vs "2", but I would like to sort it by the number before the " - ".

I can make this happen in the "Mapped Value", but then it shows "2" rather than "2 - 10 years of experience" like we want. Is there any way to sort by a custom mapped value without actually showing the mapped value? I want it to show the original value from our API. Thanks!

@jacktilly can you share the code/screenshot of what the mapped field contains?

I am not sure what the code itself will achieve. I am taking "2 - 10 years of experience" and "11 - 20 years of experience", and so on, and just extracting the first number, "2" and "11", running parseInt, and sorting by that value. I want to keep doing this sort, but keep display value as "2 - 10 years of experience". @ScottR

@jacktilly I guess what I am asking is that since sort might be strict there may be another way to get around the limitation (if there is one) by using a conditional statement. - hence my question to see your code so I can try and replicate and derive a solution...