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
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
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)]
ans = 'hello world 0.021847'
horzcat(tx1,tx2,num2str(number))
ans = 'hello world 0.021847'
strcat(tx1,tx2,num2str(number))
ans = 'helloworld0.021847'
using + is only suported for strings not character arrays:
"hello " + "world"
ans = "hello world"
class("hello " + "world")
ans = 'string'
class(tx1)
ans = 'char'

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Characters and Strings 的更多信息

标签

产品


版本

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by