Sort complicated Array low -->top

1 view (last 30 days)
Hey Guys I have this Array.Now i need to sort by the Values in the brackets. This Values go from 1 to 255. Does anybody has an idea how i can get this Values ?
InputData
ans =
Columns 1 through 8
'J_012(105)' 'J_013(106)' 'J_014(107)' 'J_015(2)' 'J_016(94)' 'J_017(95)' '

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 25 Aug 2014
A={'J_012(105)' 'J_013(106)' 'J_014(107)' 'J_015(2)' 'J_016(94)' 'J_017(95)'}
s=regexp(A,'(?<=\().+(?=\))','match')
[~,idx]=sort(str2double([s{:}]))
out=A(idx)

More Answers (1)

Max Müller
Max Müller on 26 Aug 2014
Matlab says to
[~,idx] = sort(str2double([s{:}]))
Error: Expression or statement is incorrect--possibly unbalanced (, {, or [.

Categories

Find more on Shifting and Sorting Matrices in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!