Effacer les filtres
Effacer les filtres

Regular expression for 1*1 cell array

2 vues (au cours des 30 derniers jours)
raghavendra kandukuri
raghavendra kandukuri le 26 Sep 2019
Hello,
I was trying to find the regular expression for a 1*1 cell array, the array looks somethig like this:
{'<string_attribute name="EEE_Level_LTT"><s>34</s></string_attribute>'}
I need just those numbers in the whole array, fox example its 34 in the above array, the charater array would be same every time, except those two or one digits.
Any help is higley appreciated.

Réponse acceptée

Adam Danz
Adam Danz le 26 Sep 2019
Modifié(e) : Adam Danz le 26 Sep 2019
Instead of a regular expression, you could use isstrprop() to identify which characters in each element of the cell array are digits and extract those digits. This assumes that there are no other digits in the char arrays other than those you'd like to extract.
'C' is an example cell array of chars.
'digits' is a numeric vector where digits(n) is the number stored in C{n}.
C(1) = {'<string_attribute name="EEE_Level_LTT"><s>34</s></string_attribute>'};
C(2) = {'<string_attribute name="EEE_Level_LTT"><s>9</s></string_attribute>'};
digits = str2double(cellfun(@(x)x(isstrprop(x,'digit')), C, 'UniformOutput',false));
  1 commentaire
raghavendra kandukuri
raghavendra kandukuri le 26 Sep 2019
Thank you @Adam, works perfectly.

Connectez-vous pour commenter.

Plus de réponses (0)

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!

Translated by