我正在尝试在字符串中的每个'_'之前将'\'插入字符串数组中。我试图这样做的原因是当我使用图表图例中的工作表名称时,保持我从xls文件中提取的工作表名称的格式。我尝试使用:
legend(sheetname{n},'Interpreter','none','Location','East')
但它只是将两个命令添加为图例中的另外两个标签。 Hense这个解决方案。我已经研究了通过sheetnames搜索并找到了如何替换,但我不想在可能的情况下替换字符。如果有办法,请告诉我。
答案 0 :(得分:2)
请改为尝试:
legend(sheetname(n),'Interpreter','none','Location','East');
请注意使用括号而不是花括号,它将单元格传递给LEGEND而不是单元格的内容(即cell indexing instead of content indexing)。这应该允许正确解释附加参数/值对。
答案 1 :(得分:1)
如果要对每个单元格元素应用字符串替换函数,可以按如下方式执行:
cellfun(@(x) strrep(x,'_','\_'),sheetname,'uniformoutput',false)
这会将strrep(x,'_','\_')
应用于sheetnames
的所有元素,并将其作为新的单元格数组输出(因为'uniformoutput',false
)。