查看单个帖子
旧 2019-12-10, 20:48   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 MATLAB:struct.name类型和strcmp

我有以下代码:
fonts = dir('fonts')

strcmp('BELL.TTF',fonts.name)

其中dir('fonts')返回一个33x1结构,其中每个条目都有名称(字符串),日期和其他一些东西。我不知道fonts.name是什么类型(如果它是一个单元格数组或什么),我的最终目标是能够使用strcmp在所有名称之间进行比较。



回答:

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'



更多&回答...
poster 当前离线   回复时引用此帖