MATLAB 2022b removing spaces from strings in concatenation?

10 visualizzazioni (ultimi 30 giorni)
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 Commenti
Stephen23
Stephen23 il 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.

Accedi per commentare.

Risposta accettata

Jonas
Jonas il 29 Nov 2022
Modificato: Jonas il 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)]
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'
  3 Commenti
Jonas
Jonas il 29 Nov 2022
happy to help. if you do not have any more question, please accept the answer

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Tag

Prodotti


Release

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by