Extracting 2 Far right characters

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"

Réponses (2)

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"
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'}

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Produits

Version

R2021b

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by