MATLAB 2022b removing spaces from strings in concatenation?
5 views (last 30 days)
Show older comments
Tahsin Emir Ersoy
on 29 Nov 2022
Commented: Tahsin Emir Ersoy
on 29 Nov 2022
I just tried to plot this but the space after Nozzle Number is being removed?
for i=1:19
plot(pressures_spray_angle,spray_angle(i,:),'-*','LineWidth',2,'DisplayName',strcat('Nozzle Number ',num2str(nozzle_numbers(i))));
end
Also I tried to concatenate with a + and that did not work.
Is this a MATLAB 2022b thing? If so, please name out the software engineer who implemented it and approved it for accountability purposes :D
2 Comments
Stephen23
on 29 Nov 2022
"Is this a MATLAB 2022b thing?"
No, STRCAT has always trimmed trailing whitespace from character arrays, as the last example from this 2012 archive of the documentation shows:
Every archived version of the documentation shows/explains this.
Accepted Answer
Jonas
on 29 Nov 2022
Edited: Jonas
on 29 Nov 2022
"For character array inputs, strcat removes trailing ASCII whitespace characters: space, tab, vertical tab, newline, carriage return, and form feed. For cell array and string array inputs, strcat does not remove trailing white space."
use [] or horzcat please
tx1='hello ';
tx2='world ';
number=rand();
[tx1 tx2 num2str(number)]
horzcat(tx1,tx2,num2str(number))
strcat(tx1,tx2,num2str(number))
using + is only suported for strings not character arrays:
"hello " + "world"
class("hello " + "world")
class(tx1)
3 Comments
More Answers (0)
See Also
Categories
Find more on Characters and Strings 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!