Pattern matching problem
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
I realize my previous post was way too long so here is a simpler version:
%callback for listbox1
%expirement%
pattern1 = 'SHC';
pattern2 = 'SLR';
pattern3 = 'RHA';
indexselected = get(handles.listbox1,'Value');
list = get(handles.listbox1,'String');
itemselected = list{indexselected};
if regexp(itemselected, pattern1)
[substance,substance]=xlsread('C:\Users\ecorbett\Documents\VCoachData\Labels\SHC.xlsx','Sheet 1','A1:A10000');
set(handles.listbox3,'string',substance);
msgbox('The listbox has been updated.','Update Complete','help');
elseif regexp(itemselected, pattern2)
[substance,substance]=xlsread('C:\Users\ecorbett\Documents\VCoachData\Labels\SLR.xlsx','Sheet 1','A1:A10000');
set(handles.listbox3,'string',substance);
msgbox('The listbox has been updated.','Update Complete','help');
elseif regexp(itemselected, pattern3)
[substance,substance]=xlsread('C:\Users\ecorbett\Documents\VCoachData\Labels\RHA.xlsx','Sheet 1','A1:A10000');
set(handles.listbox3,'string',substance);
msgbox('The listbox has been updated.','Update Complete','help');
end
the strings in listbox1 are file names:
SHC_RL_S1_0004_v1.59806163.avi SHC_RL_S2_0004_v1.59806163.avi RHA_RL_S3_0004_v1.59806163.avi RHA_LL_S1_0004_v1.59806163.avi SLR_RL_S3_0004_v1.59806163.avi SLR_LL_S1_0004_v1.59806163.avi
right now the code produces no errors but does not update listbox3
0 Kommentare
Akzeptierte Antwort
Matt Fig
am 30 Jun. 2011
I would use STRFIND instead of REGEXP.
list = 'SHC_RL_S1_0004_v1.59806163.avi SHC_RL_S2_0004_v1.59806163.avi RHA_RL_S3_0004_v1.59806163.avi '
pattern1 = 'SHC';
if strfind(list,pattern1)
disp('Found it!')
end
But now try with:
pattern1 = 'afddsafsa';
8 Kommentare
Matt Fig
am 1 Jul. 2011
Again, I would not use regular expressions. A simple match will work if you only have 3 patterns. Look at my example above. There is no need to use regular expressions when you know the exact match before hand.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Migrate GUIDE Apps finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!