findLabel

Получите метку файла проекта

Описание

пример

label = findLabel(file,categoryName,labelName) получает указанную метку в указанной категории из указанного файла. Оно возвращает определение метки и присоединенные к ней данные. Используйте этот синтаксис, когда вы знаете имя метки и категорию. Если метка не найдена, findLabel возвращает пустой массив.

пример

label = findLabel(file,labelDefinition) получает метку, заданную заданным объектом определения метки. Используйте этот синтаксис, если вы ранее получили labelDefinition путем доступа к Labels свойство, например, при помощи выражения, подобного myfile.Labels(1).

пример

label = findLabel(category,labelName) получает метку с помощью объекта категории, а не имени файла и категории. Используйте этот синтаксис, если у вас есть объект категории, полученный из proj.Categories свойство или при помощи findCategory функция.

Примеры

свернуть все

Найти все файлы проекта с меткой "Utility"

Откройте проект Times Table App. Использовать currentProject чтобы создать объект проекта из загруженного проекта.

matlab.project.example.timesTable
proj = currentProject;

Получите список файлов проекта.

files = proj.Files;

Цикл через файлы. Получите расширение каждого файла, взяв последний элемент, возвращенный fileparts функция. Если файл имеет расширение .m, прикрепить метку "Utility".

for fileIndex = 1:numel(files)
   file = files(fileIndex);
   [~,~,fileExtension] = fileparts(file.Path);
   if strcmp(fileExtension,".m")
      addLabel(file,"Classification","Utility");
   end
end

Используйте findLabel функция для поиска всех файлов с меткой "Utility"и добавить их в массив utilityFilesToReview.

utilityFilesToReview = {};
for jj=1:numel(files)
   thisFile = files(jj);   
   label = findLabel(thisFile,"Classification","Utility");
   if (~isempty(label))
      % This is a file labeled "Utility". Add to the 
      % list of utility files.
      utilityFilesToReview = [utilityFilesToReview; thisFile];
   end
end

Откройте проект Times Table App. Использовать currentProject чтобы создать объект проекта из загруженного проекта.

matlab.project.example.timesTable
proj = currentProject;

Получите файл по имени.

myfile = findFile(proj,"source/timesTableGame.m");

Получите метку из этого файла по имени.

label = findLabel(myfile,"Classification","Design");
label = 

  Label with properties:

            File: "C:\myProjects\examples\TimesTableApp\source\timesTableGame.m"
        DataType: 'none'
            Data: []
            Name: "Design"
    CategoryName: "Classification"

Исследуйте Labels свойство файла, чтобы получить массив Label Объекты, по одной для каждой метки, присоединенной к файлу. Индекс в Labels свойство для присоединения определения метки к конкретному файлу.

labels = myfile.Labels
labeldefinition = myfile.Labels(1)

Получите метку из определения метки.

label = findLabel(myfile,labeldefinition);

Откройте проект Times Table App. Использовать currentProject чтобы создать объект проекта из загруженного проекта.

matlab.project.example.timesTable
proj = currentProject;

Получите категорию.

category = proj.Categories(1)
category = 

  Category with properties:

                Name: "Classification"
        SingleValued: 1
            DataType: "none"
    LabelDefinitions: [1×7 matlab.project.LabelDefinition]

Получите определение метки из этой категории.

ld = findLabel(category,"Design")
ld = 

  LabelDefinition with properties:

            Name: "Design"
    CategoryName: "Classification"

Входные параметры

свернуть все

Файл для поиска, заданный как ProjectFile объект или массив файла объектов. Получить объект файла можно, исследуя свойство проекта Files (с помощью синтаксиса proj.Files), или использовать findFile для получения файла по имени. Файл должен быть в указанном проекте.

Имя категории метки, заданное как вектор символов или строковый скаляр.

Имя метки, заданное как вектор символов или строковый скаляр.

Определение метки, заданное как LabelDefinition объект, полученный из file.Label свойство.

Объект категории. Получите объект категории из proj.Categories свойство или при помощи findCategory функция.

Выходные аргументы

свернуть все

Пометьте, вернитесь как Label объект.

Введенный в R2019a