how to split character data in string and double?

6 vues (au cours des 30 derniers jours)
Bou
Bou le 28 Fév 2014
Commenté : Bou le 28 Fév 2014
Hello,
I'm having difficulties separating character arrays. I want to split the char strings below and retrieve the numeric values.
'Time 12:57:33'
'Temp. T2 [deg.C] = 36.6'
'Solar Irradiance [kW/m^2] 0.857101'
Can anybody help me? Im new to Matlab and I know this should be an easy task, but im having quite some trouble with it.
Thanks in advance, greetings Boudewijn

Réponse acceptée

Andrei Bobrov
Andrei Bobrov le 28 Fév 2014
Modifié(e) : Andrei Bobrov le 28 Fév 2014
c = {'Time 12:57:33'
'Temp. T2 [deg.C] = 36.6'
'Solar Irradiance [kW/m^2] 0.857101'}
regexp(c,'(\d*:)*\d*(\.\d*)*$','match')
  4 commentaires
Bou
Bou le 28 Fév 2014
Sorry,
The data is stored in a structure consisting of a several 69x1 cell arrays.
To refer to the second time value I type in;
solar.time(2,1)
Bou
Bou le 28 Fév 2014
I figured it out! Thanks again!

Connectez-vous pour commenter.

Plus de réponses (1)

Azzi Abdelmalek
Azzi Abdelmalek le 28 Fév 2014
Modifié(e) : Azzi Abdelmalek le 28 Fév 2014
str='Time 12:57:33'
out=regexp(str,'\d+(\.)?(\d+)?','match')
  1 commentaire
Azzi Abdelmalek
Azzi Abdelmalek le 28 Fév 2014
Modifié(e) : Azzi Abdelmalek le 28 Fév 2014
If your data are stored like:
v={'Time 12:57:33','Temp. T2 [deg.C] = 36.6','Solar Irradiance [kW/m^2] 0.857101';'Time 12:57:33' ,'Temp. T2 [deg.C] = 36.6','Solar Irradiance [kW/m^2] 0.857101'}
out=regexp(v,'[\d:]+(\.)?(\d+)?$','match')
out=[ [out{:,1}]' [out{:,2}]' [out{:,3}]']

Connectez-vous pour commenter.

Catégories

En savoir plus sur Data Type Conversion 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