Extracting 2 Far right characters

1 view (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'}

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Tags

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!