Extracting 2 Far right characters

3 views (last 30 days)
Pete sherer
Pete sherer on 6 May 2022
Answered: Stephen23 on 6 May 2022
Hi,
How could I extract the 2 far right characters from cell string?
tt= {'United Kingdom TR';'United Kingdom SR';'United Kingdom WR';'Worldwide TC'};
Below is very inefficient.
splitStr = regexp( tt, ' ','split');
for runi= 1: length( tt)
ttxt = splitStr{runi};
peril(runi) = string( ttxt(end));
end
peril =
1×4 string array
"TR" "SR" "WR" "TC"

Answers (2)

Les Beckham
Les Beckham on 6 May 2022
One approach that generates a cell array:
tt= {'United Kingdom TR';'United Kingdom SR';'United Kingdom WR';'Worldwide TC'};
c = cellfun(@(s)s(end-1:end), tt, 'UniformOutput', false)
c = 4×1 cell array
{'TR'} {'SR'} {'WR'} {'TC'}
If you prefer, you can convert this result to a string array like this
string(c)
ans = 4×1 string array
"TR" "SR" "WR" "TC"

Stephen23
Stephen23 on 6 May 2022
tt = {'United Kingdom TR';'United Kingdom SR';'United Kingdom WR';'Worldwide TC'};
pe = regexp(tt,'\w\w$','match','once')
pe = 4×1 cell array
{'TR'} {'SR'} {'WR'} {'TC'}

Tags

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!