Cell Array Indexing of HEX values

3 次查看(过去 30 天)
Hello,
I have a HEX cell array and I use importdata function to import them.
a = importdata('C:\User\Desktop\text.txt');
It gives me 2x1 cell '0F 04 0A 0E 1E 2F' and '3E 2A 1F 03 05 0A'
For example, I want to take 0E from there, how can I index this element? Thank you.

采纳的回答

Voss
Voss 2022-6-2
编辑:Voss 2022-6-2
a = {'0F 04 0A 0E 1E 2F', '3E 2A 1F 03 05 0A'};
C = squeeze(split(a,' '))
C = 2×6 cell array
{'0F'} {'04'} {'0A'} {'0E'} {'1E'} {'2F'} {'3E'} {'2A'} {'1F'} {'03'} {'05'} {'0A'}
C{1,4}
ans = '0E'
  2 个评论
tinkyminky93
tinkyminky93 2022-6-2
编辑:tinkyminky93 2022-6-2
Can we write like C(1, 4:5) or something like that for cell arrays?
Voss
Voss 2022-6-2
编辑:Voss 2022-6-2
Try it and see:
a = {'0F 04 0A 0E 1E 2F', '3E 2A 1F 03 05 0A'};
C = squeeze(split(a,' '));
C(1, 4:5)
ans = 1×2 cell array
{'0E'} {'1E'}
Seems to work.
Note that subscripting a cell array with parentheses ( ) like that gives you another cell array. To get the contents of the cells instead, use braces { }:
C{1, 4:5}
ans = '0E'
ans = '1E'
And you may want to concatenate those 2 outputs together, using square brackets [ ]:
[C{1, 4:5}]
ans = '0E1E'
Another example:
[C{2,:}]
ans = '3E2A1F03050A'

请先登录,再进行评论。

更多回答(0 个)

类别

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

产品


版本

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by