Хотя этот вопрос является дубликатом этого предыдущего вопроса , я вынужден указать на одну небольшую разницу между проблемами, которые они решают, и тем, как мой предыдущий ответ может быть адаптирован немного ...
Предыдущий вопрос касался того, как обойти проблему синтаксиса, связанную с немедленным вызовом функции, за которой следует операция индексирования в той же строке. Вместо этого этот вопрос касается двух операций индексации, следующих сразу за одной и той же строкой. Два решения из моего другого ответа (с использованием SUBSREF или вспомогательной функции) также применимы, но на самом деле существует альтернативный способ использования SUBSREF, который объединяет две операции индексации, например:
value = subsref(m,struct('type','()','subs',{'stackoverflow.com',{1}}));
Обратите внимание, как индексы последовательного индекса 'stackoverflow.com'
и 1
объединяются в массив ячеек для создания структурного массива 1 на 2 для передачи в SUBSREF. Это все еще уродливый однострочник, и я бы все еще выступал за использование решения с временными переменными для удобства чтения.