MATLAB: тип struct.name и strcmp

У меня есть следующий код:

fonts = dir ('шрифты')

зЬгстр ('BELL.TTF',fonts.name)

где dir ('fonts') возвращает структуру 33x1, где у каждой записи есть имя (строка), дата и несколько других вещей. Я не могу понять, что такое тип fonts.name (если это массив ячеек или что), и моя конечная цель - использовать strcmp для сравнения по всем именам.

1 ответ

Решение

fonts.name 33 отдельных символьных массива. Вы хотите объединить их в массив ячеек, чтобы вы могли использовать его с strcmp,

В коде:

fonts = dir('fonts');
%# use curly brackets to combine the 33 strings into a cell array
tf = strcmp('BELL.TTF',{fonts.name})

tf логический массив с 1 где угодно fonts.name равно 'BELL.TTF'

Другие вопросы по тегам