How to pick specified matching part of the string
1 次查看(过去 30 天)
显示 更早的评论
Hi,
I have cell array as shown below:
A050K190E3T15R40
B060L110E8T15R43
F050K230E2T25R40
G050K590E2T15R40
P050L590E2T15R40
I want to take the numerical part left side to the "E" and immediate right side numerical part of "E" and Including "E".
Desired Output:
190E3
110E8
230E2
590E2
590E2
1 个评论
Greg
2017-12-2
Kudos and thank you for a fantastic post. Formatting, example input and desired output. Makes it easy to answer the question.
采纳的回答
Greg
2017-12-2
Regular expressions for the win.
out = regexp(in,'\d*E\d*','match','once');
The 'once' means one time per cell element, and greatly simplifies the output if you know for sure there should only be one match in each element.
2 个评论
更多回答(1 个)
Jan
2017-12-2
The example looks like you want the substring from the indices 6 to 10:
Data = {'A050K190E3T15R40', ...
'B060L110E8T15R43', ...
'F050K230E2T25R40', ...
'G050K590E2T15R40', ...
'P050L590E2T15R40'};
Result = cellfun(@(c) c(6:10), Data, 'UniformOutput', 0)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Get Started with Statistics and Machine Learning Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!