我有一个由不同字符组合组成的文本文件。例如:
a+b*c
b+c*a
c+a*b
我想将这个文件读入matlab,并希望将每一行分配给这样的数组:
c(1)=a+b*c
c(2)=b+c*a
c(3)=c+a*b
此外,我想将其他字符数组分配给变量a,b,c等。例如,我可以指定为
a='A', b='B', c='C'
并将最终输出打印为:
c(3)=C+A*B
但我仍然坚持两个步骤,关于如何在Matlab中读取和分配不同的行到不同的字符数组。欢迎任何建议。
答案 0 :(得分:1)
使用importdata
将文本读入单元格数组并逐个执行替换。
<强>代码强>
%%// Name of your text file
file1 = 'eqns.txt'
c = importdata(file1)
c = strrep(c,'a','A');
c = strrep(c,'b','B');
c = strrep(c,'c','C')
<强>输出强>
c =
'a+b*c'
'b+c*a'
'c+a*b'
c =
'A+B*C'
'B+C*A'
'C+A*B'
如果您有兴趣将字母表设为大写字母,则可以在导入数据后直接执行此操作 -
c = importdata(file1)
c = upper(c)