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

3 次查看(过去 30 天)
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?

采纳的回答

TAB
TAB 2012-12-18
Mystr = 'ABCDEF';
MystrLower = lower(Mystr);
MystrLowerWithSpace = [' ' MystrLower];
%---------OR----------
% In 1 line
MystrLowerWithSpace = [' ' lower(Mystr)];
See lower
  1 个评论
Sara
Sara 2012-12-18
编辑:Sara 2012-12-18
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.

请先登录,再进行评论。

更多回答(1 个)

Muruganandham Subramanian
Use lower() command

类别

Help CenterFile Exchange 中查找有关 Legend 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by