我正在尝试解析某个文件。
我的想法是在使用切换句的同时逐行阅读。 我需要将第一个单词与某些字符串进行比较。
log = fopen('my_file');
tline = fgetl(log);
while ischar(tline)
split = strsplit(tline,',');
switch split(1)
case 'str1'
%do something
case 'str2'
%do something else
end
end
我不断收到“SWITCH 表达式必须是标量或 字符串常量。”
split 和 split(1) 的类是 char。该变量在每个 while 循环中都是恒定的。
出了什么问题?
最佳答案
strsplit
返回字符串元胞数组。您需要使用花括号访问结果的内容:
switch split{1}
case 'str1'
%do something
case 'str2'
%do something else
end
关于MATLAB:switch 语句问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28484178/