I wonder if one can use the StringToUpper function (C library?) together with an 'or'-type command and lowercase input string to search both terms.
How to search a word both uppercase and lowercase given a specified string?
13 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Daniel Bridges
el 15 de Mzo. de 2018
Respondida: Image Analyst
el 15 de Mzo. de 2018
MIM Maestro puts volume data inside the table variable names:
Rectum (4)(Volume: 57.77) Bladder (5)(Volume: 139.40)
However, sometimes the name is lowercase, e.g. 'bladder'. If one wishes to pull the volume '139.40' from the CSV file, how can one search for both 'Bladder' and 'bladder' in a single query given an input string?
The following function only searches the entered string with regexp; if the input organ string is 'Bladder', doesn't regexp neglect 'bladder'?
function output = GetVolumesFromDVH(organ)
[omitting code to loop through multiple files...]
searchstring = [organ,'_'];
[...]
output(fileloop) = GetOrgVol(filepath,searchstring);
[...]
end
function volume = GetOrgVol(filepath,searchstring)
% get list of variable names
opts = detectImportOptions(filepath, 'NumHeaderLines', 1);
% we find the column containing the organ volume
OrganSearching = regexp(opts.VariableNames,searchstring);
for loop = 1:numel(opts.VariableNames)
if OrganSearching{loop} == 1
index = loop;
end
end
% extract volume from said string
volume = extractAfter(opts.VariableNames{index},'Volume_');
volume = sscanf(strrep(volume,'_','.'),'%f');
end
1 comentario
Respuesta aceptada
Star Strider
el 15 de Mzo. de 2018
3 comentarios
Star Strider
el 15 de Mzo. de 2018
As always, my pleasure!
Thanks for the info on R2018a. I didn’t know it was available. (It wasn’t when I checked a earlier this week.) I’ll follow your lead.
Más respuestas (1)
Image Analyst
el 15 de Mzo. de 2018
Just cast the string to lower and use a lower case template:
if contains(lower(yourString), 'bladder')
% yourString contains bladder somewhere in it
end
or you might use strcmpi() if you're sure there is no other characters in your string other than the template you're searching for:
if strcmpi(yourString, 'bladder')
0 comentarios
Ver también
Categorías
Más información sobre File Operations en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!