2016-07-26 10 views
0

は、私は次の値でMATLABのセル配列を持っている:分割数

'1mcg/kg' 
'1mcg/kg' 
'1mcg/kg' 
'0.7mcg/kg/hr' 
'0.7mcg/kg/hr' 
'0.5mcg/kg/hr' 
'0.5mcg/kg/hr' 
'0.5mcg/kg/hr' 

私は数字と単位にこれを分割する方法を教えてください。

'1' 'mcg/kg' 
'1' 'mcg/kg' 
'0.7' 'mcg/kg/hr' 
'0.5' 'mcg/kg/hr' 

答えて

2

あなたがこれを行うにはregexpを使用することができます。私は2つのセル配列でのようなものを出力する必要があります。あるグループの数値部分と他のグループの残りの文字列とが一致する正規表現を作成します。

out = regexp(data, '(\-?[0-9\.]*)(.*)', 'tokens', 'once'); 
out = cat(1, out{:}) 

% '1'  'mcg/kg' 
% '1'  'mcg/kg' 
% '1'  'mcg/kg' 
% '0.7' 'mcg/kg/hr' 
% '0.7' 'mcg/kg/hr' 
% '0.5' 'mcg/kg/hr' 
% '0.5' 'mcg/kg/hr' 
% '0.5' 'mcg/kg/hr'