如何在Matlab中将多行字符串更改为一个行字符串

时间:2014-06-13 09:28:05

标签: matlab

我正在使用'公式'在Matlab中命令输出使用fit命令创建曲线拟合时使用的公式。公式以多行输出。我想使用str2func来创建字符串的匿名函数,但唯一可行的方法是字符串是否在一行中。我使用strrep(oldstr,'',[])去掉字符串中的空格,但只消除了每行中的空格,使字符串保持在单独的行中。

AKA我的等式最终会像这样结束: a1*sin(b1*x+c1)+a2*sin(b2*x+c2)+a3*sin(b3*x+c3)+ a4*sin(b4*x+c4)+a5*sin(b5*x+c5)+a6*sin(b6*x+c6)+ a7*sin(b7*x+c7)+a8*sin(b8*x+c8)

当我想要这样的时候(它应该在一行中没有中断):a1*sin(b1*x+c1)+a2*sin(b2*x+c2)+a3*sin(b3*x+c3)+a4*sin(b4*x+c4)+a5*sin(b5*x+c5)+a6*sin(b6*x+c6)+a7*sin(b7*x+c7)+a8*sin(b8*x+c8)

感谢所有帮助

1 个答案:

答案 0 :(得分:0)

您可以使用reshape然后使用strrep

str1 = ['a  ';'bb ';'ccc']
str2 = reshape(str1',   1,  [])   % all 1 one line after transposing the array
str3 = strrep (str2 , ' ',  '')   % remove spaces