My data is a 272×1 cell array see below
{'Geometry' }
{'X' }
{'Y' }
{'NR' }
{'X1' }
{'Y1' }
{'Easting' }
{'Northing' }
{'Height1' }
{'Def_Rate' }
{'Std_Dev' }
{'Height_unc'}
{'Def_Rate_u'}
{'D_20170729'}
{'D_20170810'}
{'D_20170816'}
{'D_20170822'}
I need the dates 20170729 ,20170810 .... can anyone help ASAP

 采纳的回答

dpb
dpb 2021-2-1
编辑:dpb 2021-2-1
>> datetime(extractAfter(c(contains(c,'D_')),'D_'),'InputFormat','yyyyMMdd')
ans =
4×1 datetime array
29-Jul-2017
10-Aug-2017
16-Aug-2017
22-Aug-2017
>>
Actually can simplify just a little to include the leading "D_" string as fixed string in the input format --
>> datetime(c(contains(c,'D_')),'InputFormat','''D_''yyyyMMdd')
ans =
4×1 datetime array
29-Jul-2017
10-Aug-2017
16-Aug-2017
22-Aug-2017
>>

更多回答(1 个)

With older Matlab versions:
match = strcnmp(data, 'D_', 2);
result = strrep(data(match), 'D_', '');

类别

帮助中心File Exchange 中查找有关 Characters and Strings 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by