how do I convert all capital letters in a string to lowercase and add a space before them?

5 vues (au cours des 30 derniers jours)
I have a function that turns the input variable into a plot legend and output filename:
axisLabelInput = inputname(3);
labelInput = strrep(axisLabelInput,'_',' ');
legend(['Range at ' labelInput]);
print(gcf, '-depsc', '-r300', labelInput);
but this only works when the input variable is in the format input_var_1. It is far more common for the input variables to be in a different format, eg inputVar1, which looks awful in a legend entry. How can I modify my code to find all capital letters in my desired input variable, and make them lowercase and add a space beforehand, so that my legend and file output still make sense?

Réponse acceptée

TAB
TAB le 18 Déc 2012
Mystr = 'ABCDEF';
MystrLower = lower(Mystr);
MystrLowerWithSpace = [' ' MystrLower];
%---------OR----------
% In 1 line
MystrLowerWithSpace = [' ' lower(Mystr)];
See lower
  1 commentaire
Sara
Sara le 18 Déc 2012
Modifié(e) : Sara le 18 Déc 2012
Actually, I accepted that answer too soon. Sorry for not being clear, what I meant was that I wanted to put a space before every letter that had previously been capitalized. So if the input was:
inputVarOne
then the converted value would be
input var one
but the rest is perfect, thanks.

Connectez-vous pour commenter.

Plus de réponses (1)

Muruganandham Subramanian
Muruganandham Subramanian le 18 Déc 2012
Use lower() command

Community Treasure Hunt

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

Start Hunting!

Translated by