Extracting a number from cells

Hi,
I am relatively new to MATLAB and I am looking for some help extracting the numbers from a cell containing letters and numbers. The format is 47 rows and 1 column with each cell containing the word 'Monday' followed by a number.
e.g.
Monday06
Monday10
Monday38
Monday18
I was wondering if it is possible to extract just the number so it should say:
06
10
38
18
Apologies for the poor terminology, I am not great with the correct terms for everything.
Thank you

1 commentaire

A cell cannot contain both letters and numbers, unless the cell contained a cell array. A cell array can. Not sure what you have because you forgot to attach your cell array data
save('answers.mat', 'yourCellArray');
In the meantime, read this link:

Connectez-vous pour commenter.

Réponses (2)

Ameer Hamza
Ameer Hamza le 17 Déc 2020
Modifié(e) : Ameer Hamza le 17 Déc 2020

0 votes

How are these strings stored? Are these stored in a cell array? If yes, try something like this
C = {'Monday06', 'Monday10', 'Monday38', 'Monday18'}
vals = textscan([C{:}], 'Monday%d')
Image Analyst
Image Analyst le 17 Déc 2020

0 votes

Try isstrprop():
ca = {...
'Monday06'
'Monday10'
'Monday38'
'Monday18'}
for k = 1 : numel(ca)
thisCell = ca{k};
digitIndexes = isstrprop(ca{k},'digit');
numbers(k) = str2double(thisCell(digitIndexes))
end

Catégories

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by