exponenta event banner

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. Использовать 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. Использовать 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. Использовать 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