1
我已经写下了下面的代码。基本上它是检查一些路径是否已经在matlab搜索路径中。如果找不到,则会添加路径。用strcmp搜索matlab搜索路径
问题是strcmp总是返回一个零矢量,尽管路径实际上已经存在于currPath中。我实际上从currPath拷贝了一个路径来检查我是否得到了正确的值。不知道这是为什么?
% get current path
currPath = strsplit(path, ';')';
currPath = upper(currPath);
% check if required paths exist - if not add them
pathsToCheck = ['C:\SOMEFOLDER\MADEUP'];
pathsToCheck = upper(pathsToCheck);
for n = 1 : length(pathsToCheck(:, 1))
index = strcmp(currPath, pathsToCheck(n, 1));
if sum(index) > 0
addpath(pathsToCheck{t, 1}, '-end'); % add path to the end
end
end
% save changes
savepath;
在这个例子中,'pathsToCheck'是一个'char',所以'length(pathsToCheck(:, 1))'将是单个字符的长度(== 1)。同样,'pathsToCheck(n,1)'总是一个字符,所以'strcmp'失败。那么,这只是在这个例子中是真的吗?如果是,请更新:)如果不是,问题解决。 –
谢谢!这对我来说有点愚蠢,漫长的一天 – mHelpMe
那么,那是你的问题吗?或者只是一个例子中的问题? –