我正在使用Matlab R2011b。我想在编辑器中获取活动mfile的第一行的文本。我知道我可以使用以下代码将 all mfile的文本作为1xn字符数组(不分成行)。但是我只想要第一行。
activeEditor = matlab.desktop.editor.getActive ;
activeEditor.Text ;
有什么建议吗?
答案 0 :(得分:4)
您可以搜索第一个“换行符”字符,并返回从开头到该位置的所有内容:
activeEditor = matlab.desktop.editor.getActive;
pos = find(activeEditor.Text==char(10), 1, 'first');
firstLineStr = activeEditor.Text(1:pos-1)
答案 1 :(得分:2)
执行此操作的一种方法是选择第一行上的所有文本,然后访问SelectedText
属性:
>> activeEditor = matlab.desktop.editor.getActive ; >> activeEditor.Selection = [1 1 1 Inf]; >> activeEditor.SelectedText ans = This is the first line of this file
您可以通过在选择整个第一行之前存储当前选择,然后在访问所选文本后恢复选择来改进此功能。这样光标位置就不会丢失。