MATLAB Answers

changes of data

1 view (last 30 days)
hi everyone
i have something like this
a=C3;A2/C3;C7;C9;A5/E1 and with this
b=regexp(a,';','split') i get this:
'C3' 'A2/C3' 'C7' 'C9' 'A5/E1'
Now the question:
How can i passa from this 'C3' 'A2/C3' 'C7' 'C9' 'A5/E1' to something like a matrix which has in the first line 'C3', second line 'A2/C3', third line 'C7'...
Any ideas?

Accepted Answer

Nathan Greco
Nathan Greco on 25 Jul 2011
You would not be able to use a matrix, as matrices can only contain the same data types (all numerical or all character arrays) and must have rectangular dimensions (without empty spaces). You can't match up the columns of 'C3' and 'A2/C3', for example, because the latter has 5 characters (5 columns) while the first has 2. Use a cell array instead.
To get a column rather than a row from your output, transpose your b:
a='C3;A2/C3;C7;C9;A5/E1';
b=regexp(a,';','split')'
b will then become a 5x1 cell array.
-Nathan
  1 Comment
Nuno Fernandes
Nuno Fernandes on 25 Jul 2011
thanks

Sign in to comment.

More Answers (1)

Oleg Komarov
Oleg Komarov on 25 Jul 2011
char(b{:})
  1 Comment
Nuno Fernandes
Nuno Fernandes on 25 Jul 2011
thanks:)

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!