Replacing One Character Issue
Show older comments
picture = '% % %'
picture = strrep(picture,picture(1),'$')
I want to replace the 1st character with a $, but it replaces all the characters with a $. I think this is because all the characters are identical. How can I fix this without changing much of the program ?
Answers (1)
"I want to replace the 1st character with a $"
picture = '% % %';
disp(picture)
picture(1) = '$';
disp(picture)
Note that that replaces the first character of picture with "$" regardless of what that character was (i.e., it does not replace the first character that's "%").
picture = 'c% % %';
disp(picture)
picture(1) = '$';
disp(picture)
5 Comments
If you actually want to replace the first character that's "%" with "$", then:
picture = '% % %';
disp(picture)
idx = find(picture == '%', 1);
if ~isempty(idx)
picture(idx) = '$';
end
disp(picture)
picture = 'c% % %';
disp(picture)
idx = find(picture == '%', 1);
if ~isempty(idx)
picture(idx) = '$';
end
disp(picture)
Kimi Raikonnen
on 3 Mar 2023
Kimi Raikonnen
on 3 Mar 2023
Kimi Raikonnen
on 3 Mar 2023
Voss
on 3 Mar 2023
The difference is that one replaces the first character and one replaces the first '%'.
disp does no conversion.
disp displays to the command line, yes.
Categories
Find more on Workspace Variables and MAT Files 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!