MATLAB:切换语句问题

时间:2015-02-12 17:40:12

标签: matlab parsing switch-statement

我正在尝试解析某个文件。

我的想法是在使用切换句子时逐行阅读。 我需要将第一个单词与某些字符串进行比较。

     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的每个循环中都是常量。

有什么问题?

1 个答案:

答案 0 :(得分:4)

strsplit返回字符串的单元格数组。您需要使用花括号访问结果的内容:

switch split{1}
    case 'str1'
    %do something
    case 'str2'
    %do something else
end