Rearranging Bytes in a Cell

2 views (last 30 days)
Scott Salazar
Scott Salazar on 9 Aug 2018
Commented: OCDER on 9 Aug 2018
So my output hexadecimal code is saved in a cell in the following format.
{'00 11 22 33 AA BB'}
I am trying to have it output as
{'1100 3322 BBAA'}
Any help would be greatly appreciated.

Accepted Answer

Stephen23
Stephen23 on 9 Aug 2018
Edited: Stephen23 on 9 Aug 2018
This is easy with regexprep:
>> C = {'00 11 22 33 AA BB'};
>> regexprep(C,'(\w{2}) (\w{2})','$2$1')
ans =
'1100 3322 BBAA'
  1 Comment
Scott Salazar
Scott Salazar on 9 Aug 2018
Thank you so much! It worked like a charm.

Sign in to comment.

More Answers (1)

OCDER
OCDER on 9 Aug 2018
A = {'00 11 22 33 AA BB'; '00 11 22 3D AA BC'; '02 11 32 33 AA BB'};
A = cellfun(@(x) sprintf('%c%c%c%c %c%c%c%c %c%c%c%c', strrep(x, ' ', '')), A, 'un', false);
A =
3×1 cell array
'0011 2233 AABB'
'0011 223D AABC'
'0211 3233 AABB'
  2 Comments
Stephen23
Stephen23 on 9 Aug 2018
Note that this does not return the order that the question requests.
OCDER
OCDER on 9 Aug 2018
Doh, I didn't see that order change.

Sign in to comment.

Categories

Find more on Language Support in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!