How can i remove string entries from Cell array?

15 次查看(过去 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 中查找有关 Shifting and Sorting Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by