How to extract cell array in matlab

2 Ansichten (letzte 30 Tage)
Mr Smart
Mr Smart am 21 Nov. 2011
Hello.. Anyone does know? I need to extract from cell array (1x1 cell). For example > '22.11.2011 13:58:56.16' from this (1x1 cell).I want to extract time in second (:56) .How can I do. Thanks.

Akzeptierte Antwort

Fangjun Jiang
Fangjun Jiang am 21 Nov. 2011
c={'22.11.2011 13:58:56.16','22.11.2011 13:58:40.16'};
d=datevec(c);
floor(d(:,6))

Weitere Antworten (3)

Sven
Sven am 21 Nov. 2011
If you have strings of dates, use datevec as follows:
[Y, M, D, H, MN, S] = datevec('22.11.2011 13:58:56.16');
You'll notice that S has the value "56.1600", so floor(S) gives you the seconds

Andrei Bobrov
Andrei Bobrov am 21 Nov. 2011
out = datevec({'22.11.2011 13:58:56.16'},'dd.mm.yyyy HH:MM:SS')
out = out(end)
OR
out = sprintf(':%d',out(end))
  4 Kommentare
Andrei Bobrov
Andrei Bobrov am 22 Nov. 2011
@Sven: Walter :)
Mr Smart
Mr Smart am 22 Nov. 2011
Thanks to you also . :)

Melden Sie sich an, um zu kommentieren.


Walter Roberson
Walter Roberson am 21 Nov. 2011
> datestr(datenum({'22.11.2011 13:58:56.16'},'dd.mm.yyyy HH:MM:SS.FFF'),':SS')
ans =
:56
>> char(cellfun(@(T) T(end-5:end-3), {'22.11.2011 13:58:56.16'},'Uniform',0))
ans =
:56
  2 Kommentare
Walter Roberson
Walter Roberson am 22 Nov. 2011
Based upon the previous answers, the following should also work:
datestr(datevec({'22.11.2011 13:58:56.16'}),':SS')
Mr Smart
Mr Smart am 22 Nov. 2011
Thanks you, Walter

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Dates and Time finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by