extract numbers from string in a cell
12 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi, I have a cell containing a string such as 'TT21abc.def'. I want to extract just the numbers so I'm left with '21'. Does anyone know how? I tried using sscanf but I was getting errors and think I don't have the right format inputs. Thanks in advance.
0 commentaires
Réponse acceptée
Friedrich
le 8 Mai 2012
Hi,
you can use regexprep or some ascii value representation comparison to do so, e.g.
a = {'TT21abc.def'};
%ascii value comparison, char(48) = '0' and char(57) = '9'
a{1}(a{1} <= 57 & a{1} >= 48)
%or use regexprep
regexprep(a{1},'\D','')
If you have a cell array with strings, I would use regexprep because it can handle cell arrays of strings as input
b = {'TT21abc.def'
'sdfsdf34435afafsd.,.,3434'}
out = regexprep(b,'\D','')
0 commentaires
Plus de réponses (1)
Andrei Bobrov
le 8 Mai 2012
with using function regexp
regexp(a,'\d*','match')
or:
b = {'TT21abc.def'
'sdfsdf34435afafsd.,.,3434'}
out = regexp(b,'\d*','match');
out = cat(2,out{:})
0 commentaires
Voir également
Catégories
En savoir plus sur Characters and Strings dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!