Undefined function 'regexp' for input arguments of type 'struct'

4 次查看(过去 30 天)
I want to extract keywords(which the word start with import.XXXX) from multiple files under annotation folder. I run my code like this, Y I get the error? Anybody can help?
r = dir(fullfile('C:\Users\ASUS\Desktop\AngryBirdTest\android\support\annotation', '*.java'));
for i=1:length(r)
p = regexpi(FileList,'import.\w*.\w*.\w*','match');
disp(p(i));
end

采纳的回答

Walter Roberson
Walter Roberson 2017-3-5
My guess:
projectdir = 'C:\Users\ASUS\Desktop\AngryBirdTest\android\support\annotation';
r = dir(fullfile(projectdir, '*.java'));
filenames = {r.name};
FileList = fullfile(projectdir, filenames);
for K = 1:length(FileList)
thisfile = FileList{K};
fprintf('\nExamining file "%s"\n', thisfile); %if desired
filecontent = fileread(thisfile);
p = regexpi(filecontent, 'import.\w*.\w*.\w*', 'match');
disp(p);
end
  7 个评论
ai ping Ng
ai ping Ng 2017-3-17
Thanks. Get it. I change into a string, it works.
r = dir(fullfile('C:\Users\ASUS\Desktop\FYP\M1\ClassFileTest/', '*.java'));
r2 = regexp(fileread('Dataset3_API.txt'), '\r?\n', 'split');
saveValueP = [];
for i=1:length(r)
p = regexp(fileread(strcat('C:\Users\ASUS\Desktop\FYP\M1\ClassFileTest/',r(i).name)), 'import android.\w*.\w*.\w*','match');
saveValueP = [saveValueP p];
no_duplicates = unique(saveValueP); %remove duplicated features
end
str = strjoin(no_duplicates);
features3 = ~cellfun(@isempty,regexp(str,r2,'match'));
disp(no_duplicates)
I still meet a question after that. Let say now I am examining the Class file which under M1 folder >> 'C:\Users\ASUS\Desktop\FYP\M1\ClassFileTest/' How if I have 'M1 folder' 'M2 folder' and 'M3 folder' ... 'Mx folder' to undergo? Is that a way to make it automatically examine and then can produce all of my folders' feature vectors?
Walter Roberson
Walter Roberson 2017-3-17
https://www.mathworks.com/matlabcentral/answers/57446-faq-how-can-i-process-a-sequence-of-files

请先登录,再进行评论。

更多回答(1 个)

Image Analyst
Image Analyst 2017-3-5
You didn't show us how you got FileList. Evidently it thinks it's a structure.

类别

Help CenterFile Exchange 中查找有关 Multirate Signal Processing 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by