2016-07-28 12 views
0

大きなセル配列があり、文字列解析をベクトル化しようとしています。セルは、100000×1で、次のようになります。Matlabセル配列の解析

date_str、次のようになります:

'2016-07-27' 
'2016-07-27' 
'2016-07-27' 
'2016-07-27' 

data = 
'"2016-07-27T14:18:08.519Z"' 
'"2016-07-27T14:18:16.549Z"' 
'"2016-07-27T14:18:21.544Z"' 
'"2016-07-27T14:18:27.517Z"' 

が、私はこのように見える二つのセルアレイにこれを解析します私が見てきた

'14:18:08.519' 
'14:18:16.549' 
'14:18:21.544' 
'14:18:27.517' 

:次のようになります

time_strcellfun(@strsplit,data)を使用していますが、 "strsplit"関数の区切り文字を指定することはできません。

答えて

1

regexprepを使用して二重引用符を削除し、次にregexp'split'オプション付き)を使用して目的の文字に分割することができます。私は分割基準が単に'T'の出現であると仮定しています。

data = regexprep(data, '^"|"$',''); % remove double quotes 
result = regexp(data, 'T', 'split'); % split at 'T' 
result = vertcat(result{:}); % un-nest cell array 
date_str = result(:,1); 
time_str = result(:,2); 
+1

ありがとう、ありがとう!それは最高です。 –