Is there a way to get the num2str without spaces?

57 views (last 30 days)
I have a matrix, a=[1:100]. I want to get a matrix c, with the digits of 1:100. To do so, I first did
b=num2str(a),
which gets me the string version but it has spaces. If it did not have spaces, I could make a loop as follows:
for i=1:size(b,2)
c(i)=b(i);
end
Since the num2str(a) has spaces, I cannot just select the ith element of b and get something meaningful.

Accepted Answer

Image Analyst
Image Analyst on 12 Oct 2017
Try sprintf():
b = sprintf('%d', a); % If a is an integer.
b = sprintf('%f', a); % If a is a double.
  2 Comments
Image Analyst
Image Analyst on 12 Oct 2017
Or
c = sprintf('%d, ', b); % b is an array.
which will put a comma and a space between all the numbers and return a single string called c with all the numbers in it.
Akshar Agarwal
Akshar Agarwal on 12 Oct 2017
Thanks, could you explain the %d and %f please?

Sign in to comment.

More Answers (0)

Categories

Find more on Numeric Types in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!