带空格的字符串连接

5

我希望能够连接字符串。我尝试使用strcat函数:

x = 5;
m = strcat('is', num2str(x)) 

但此函数会从每个字符串中删除尾随的空白字符。是否有另一个MATLAB函数可以执行字符串连接并保留尾随的空白字符?

5个回答

12
你可以使用horzcat代替strcat:
>> strcat('one ','two')
ans =
onetwo
>> horzcat('one ','two')
ans =
one two

如果你要把数字替换到字符串中,使用sprintf可能会更好:

>> x = 5;
>> sprintf('is %d',x)
ans =
is 5

4
如何呢?
strcat({' is '},{num2str(5)})

提供

的功能


' is 5'

2
请看strcat文档中的最后一个例子:尝试使用水平数组连接而不是strcat函数。请注意保留HTML标签。
m = ['is ', num2str(x)]

此外,还可以查看sprintf了解更多关于字符串格式化(前导/尾随空格等)的信息。

2
如何使用 strjoin
x = 5;
m ={'is', num2str(x)};
strjoin(m, ' ')

-2

这个不考虑哪些空格?只有你没有提到的空格!你的意思是:

m = strcat( ' is ',num2str(x) ) 

也许呢?

Matlab 不会猜测你想要空格,也不知道你想在哪里放置这些空格。


如果你使用strcat函数,那么你放置的空格将被删除。 - Gunther Struyf

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接