我想創建一個在Matlab中查找特定路徑的函數。匹配Matlab的路徑
的問題是,路徑是可變的依賴於我的工作在我的程序的版本,所以
..../...../v1.1/file.m
或
.../...../v1.2/file.m
我想知道是否有一個函數用於變量名稱。另外,如果路徑太長,我不想全部寫完,是否有一個符號取代所有previos部分。我的意思是:
strfind(path,$/v1.1/file.m);
但我不確定。
我將不勝感激!
我想創建一個在Matlab中查找特定路徑的函數。匹配Matlab的路徑
的問題是,路徑是可變的依賴於我的工作在我的程序的版本,所以
..../...../v1.1/file.m
或
.../...../v1.2/file.m
我想知道是否有一個函數用於變量名稱。另外,如果路徑太長,我不想全部寫完,是否有一個符號取代所有previos部分。我的意思是:
strfind(path,$/v1.1/file.m);
但我不確定。
我將不勝感激!
如果您正在尋找版本號v1.X的實例的路徑,那麼您應該只餵它regexp。
關於存儲路徑的根目錄並將其與特定於版本的部分相結合,我通常使用fullfile來處理路徑分隔符,並使您的代碼系統獨立。最後,爲了處理版本編號,我使用了sprintf。我實驗室裏的很多人喜歡使用數組連接,但是我發現難以閱讀的代碼。
root = matlabroot; % Just an example of a root
version = 1; % Make this a variable in case of future upgrades
subversion = 1; % The actual part from the question
fullPth = fullfile(root, sprintf('v%i.%i', version, subversion), 'file1');
你想做類似的事嗎?
versionOfProgram = 'v1.2';
f = fullfile('C:', 'Applications', 'matlab', versionOfProgram, 'file.m');
你看過'regexp'和'regexprep'嗎? – Shai