I want to convert my binary data into hex, the function that does so only that string as an input. but when I convert my 64 bit binary matrix into a string, it doesn't remove the spaces, which is messing my solution, any idea how to get rid of these
here is wat im talking about;
what i want: '0111001101100001011001000'
what i get: '0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 0 0 0'

4 Kommentare

AYUSH VARSHNEY
AYUSH VARSHNEY am 31 Mai 2021
And what about vice versa???
what i want : ''0 1 1 1 1 0 0 0 0 0 1 1 0 0 0" like this from "01110000011100"??
S = "01110000011100"
S = "01110000011100"
regexprep(S, '(.)(?=.)', '$1 ')
ans = "0 1 1 1 0 0 0 0 0 1 1 1 0 0"
S = "01110000011100";
sprintf(" %c",S{1})
ans = " 0 1 1 1 0 0 0 0 0 1 1 1 0 0"
Walter Roberson
Walter Roberson am 5 Jun. 2021
But then you have to get rid of the leading space ;-)

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 15 Jul. 2012
Bearbeitet: Image Analyst am 6 Jul. 2021

18 Stimmen

% Add this code
A = '0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 0 0 0' % Has spaces
A = A(find(~isspace(A)))
You get a string with no spaces:
A =
'0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 0 0 0'
A =
'0111001101100001011001000'

9 Kommentare

Sadia
Sadia am 15 Jul. 2012
thx alot
Jan
Jan am 15 Jul. 2012
The find() is not needed: A= A(~isspace(A)) is sufficient already.
pham quyet
pham quyet am 18 Mär. 2015
thank you very much
AYUSH VARSHNEY
AYUSH VARSHNEY am 31 Mai 2021
And what about vice versa???
what i want : ''0 1 1 1 1 0 0 0 0 0 1 1 0 0 0" like this from "01110000011100"??
@AYUSH VARSHNEY, try this:
str = '0 1 1 1 1 0 0 0 0 0 1 1 0 0 0'
% Make it like this form "01110000011100"
str(str == ' ') = []
AYUSH VARSHNEY
AYUSH VARSHNEY am 4 Jun. 2021
i need to add spaces in this ..
Image Analyst
Image Analyst am 4 Jun. 2021
@AYUSH VARSHNEY, it looks like all the spaces are now gone so I'm glad my code worked for you.
AYUSH VARSHNEY
AYUSH VARSHNEY am 5 Jun. 2021
no no no... it won't work for me....the pic i showed to you is the string is without space...
which is like this = "000011101010001010011"
and what i want is the spaces between them .
like this = "0 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0"
S = "01110000011100"
S = "01110000011100"
regexprep(S, '(.)(?=.)', '$1 ')
ans = "0 1 1 1 0 0 0 0 0 1 1 1 0 0"

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (3)

jwiix
jwiix am 6 Sep. 2018
Bearbeitet: Image Analyst am 6 Jul. 2021

12 Stimmen

As an alternative
A = '0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 0 0 0'
A = strrep(A,' ','') % Replace space with null.
It's slightly faster than the current logical indexing answer I think.
-------------------------------------------------------------------------------------------
K>> A= '0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 0 0 0'
A =
'0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 0 0 0'
K>> tic; A= A(~isspace(A)); toc
Elapsed time is 0.000653 seconds.
-------------------------------------------------------------------------------------------
K>> A= '0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 0 0 0'
A =
'0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 0 0 0'
K>> tic; A = strrep(A,' ',''); toc
Elapsed time is 0.000098 seconds.
:)

1 Kommentar

Shep Bryan
Shep Bryan am 6 Jul. 2021
This answer is much better than the accepted answer

Melden Sie sich an, um zu kommentieren.

Image Analyst
Image Analyst am 15 Jul. 2012
Bearbeitet: Image Analyst am 15 Jul. 2012

7 Stimmen

Just set locations with spaces equal to null:
% Generate sample string.
theString = '0 1 1 1 0 0 1 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 0 0 0'
% Now change existing string by setting locations with spaces equal to null.
theString(theString == ' ') = []
% Alternative method.
% Create a brand new string with a different name
% by extracting non-space elements.
stringWithoutSpaces = theString(theString ~= ' ')
Akansha Saxena
Akansha Saxena am 31 Aug. 2016

3 Stimmen

requiredString = regexprep(theString, '\s+', '')

2 Kommentare

Alexander Jensen
Alexander Jensen am 30 Mär. 2018
Bearbeitet: Alexander Jensen am 30 Mär. 2018
This also works on cell arrays containing strings! (at least as of version R2017a)
Example:
str = {'1 GC 2 H M', 'food nam nam';'hello world','meh bleb'};
requiredString = regexprep(str, '\s+', '')
requiredString =
2×2 cell array
'1GC2HM' 'foodnamnam'
'helloworld' 'mehbleb'
Thank you
Rajbir Singh
Rajbir Singh am 10 Jan. 2019
its works.
Thank you @Akansha Saxena

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Deep Learning Toolbox finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by