How to remove everything from string except what's inside square brackets?
古いコメントを表示
I have this cell array:
{'0,11:1.03 SPEED MEASURED 1 [rpm]'}
{'0,12:1.03 SPEED MEASURED 1 [rpm]'}
{'0,13:1.03 SPEED MEASURED 1 [rpm]'}
{'0,14:1.03 SPEED MEASURED 1 [rpm]'}
{'0,11:1.06 MOTOR CURRENT [A]' }
{'0,12:1.06 MOTOR CURRENT [A]' }
{'0,13:1.06 MOTOR CURRENT [A]' }
{'0,14:1.06 MOTOR CURRENT [A]' }
{'0,11:2.13 TORQ USED REF [%]' }
{'0,12:2.13 TORQ USED REF [%]' }
{'0,13:2.13 TORQ USED REF [%]' }
{'0,14:2.13 TORQ USED REF [%]' }
{'0,11:1.08 MOTOR TORQUE [%]' }
{'0,12:1.08 MOTOR TORQUE [%]' }
{'0,13:1.08 MOTOR TORQUE [%]' }
{'0,14:1.08 MOTOR TORQUE [%]' }
{'0,11:2.10 TORQUE REF 3 [%]' }
{'0,12:2.10 TORQUE REF 3 [%]' }
{'0,13:2.10 TORQUE REF 3 [%]' }
{'0,14:2.10 TORQUE REF 3 [%]' }
How can I get the unit from between the brackets in each string, so that I'm left with the following:
{'rpm'}
{'rpm'}
{'rpm'}
{'rpm'}
{'A' }
{'A' }
...
{'%' }
Thanks!
6 件のコメント
KSSV
2019 年 7 月 12 日
regexp this is the saviour.
Heidi Mäkitalo
2019 年 7 月 12 日
KSSV
2019 年 7 月 12 日
Thats great...this function makes me always confused......
Heidi Mäkitalo
2019 年 7 月 12 日
Akira Agata
2019 年 7 月 12 日
Heidi Mäkitalo
2019 年 7 月 12 日
回答 (1 件)
Where C is your cell array:
>> D = regexp(C,'\[(.+)\]','tokens','once')
>> D = vertcat(D{:})
D =
'rpm'
'rpm'
'rpm'
'rpm'
'A'
'A'
'A'
'A'
'%'
'%'
'%'
'%'
'%'
'%'
'%'
'%'
'%'
'%'
'%'
'%'
カテゴリ
ヘルプ センター および File Exchange で Specialized Power Systems についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!