MATLAB 2022b removing spaces from strings in concatenation?
7 次查看(过去 30 天)
显示 更早的评论
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 个评论
Stephen23
2022-11-29
"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.
采纳的回答
Jonas
2022-11-29
编辑:Jonas
2022-11-29
"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 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!