Если ячейки содержат только символьные векторы
Вы можете развернуть ячейку в список через запятую отдельных входов до error
и динамически построитьспецификатор формата, повторяя '%s\n'
соответствующее количество раз.Каждая строка заключена в одинарные кавычки.
s = {'aaa', 'bbbb'};
error(['Expected one of the values below:\n' repmat('''%s''\n', 1, numel(s))], s{:})
выдает сообщение об ошибке
Expected one of the values below:
'aaa'
'bbbb'
Если ячейки могут содержать символьные векторы или числовые матрицы
В этом случаевместо заключения в одинарные кавычки вы можете применить mat2str
к содержимому каждой ячейки:
s = {'aaa', [1 2 3; 4 5 6]};
t = cellfun(@mat2str, s, 'UniformOutput', false);
error(['Expected one of the values below:\n' repmat('%s\n', 1, numel(t))], t{:})
дает
Expected one of the values below:
'aaa'
[1 2 3;4 5 6]