How can i remove string entries from Cell array?

2 次查看(过去 30 天)
I have a cell array containing strings like that eg A={['aaa' 'char(9)' 'aaaa']} how can i keep only the first string?
  4 个评论
Aleksey Trubitsyn
A actually only has cell because of the inner []. That cell is the string 'aaachar(9)aaaa'. You can use cellfun to do a string operation on that cell. if A were {'aaa','char(9)','aaaa'} then you could do B = A(2:end)
achilleas flo
achilleas flo 2016-4-7
Probably i need a regular expression to do the job, but how.....any help will be great

请先登录,再进行评论。

回答(1 个)

Eugene
Eugene 2016-4-6
I think I understand what you meant. For example
>> A = {'aaaa' char(9) 'aaaaa'}
A =
'aaaa' ' ' 'aaaaa'
>> A(2:3) = [];
>> A
A =
'aaaa'
>> class(A)
ans =
cell
>> size(A)
ans =
1 1
Or to simply keep the first cell array element.
A = {A{1}}
  1 个评论
achilleas flo
achilleas flo 2016-4-6
Thanks for the reply but although The command syntax, of your suggestion is accepted from matlab. I do not have the expected results. Just to be more specific : I have a cell array of 300000x1 cell containing string elements. its cell is like that :
{['"I am an engineer" ' char(9) '' char(9) '' char(9) '' char(9) '' char(9) 'Hello']}
i just want to keep : I am an engineer.
***** JUST to mention i dont know if helps when i use display(A(10)); i get something like that :
'"I am an engineer" Hello'
******

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Structures 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by