5 Stimmen

Wie bekomme ich die erste Zeile des Textes einer Matlab-M-Datei?

Ich verwende Matlab R2011b. Ich möchte den Text der ersten Zeile der aktiven m-Datei im Editor erhalten. Ich weiß, dass ich den folgenden Code verwenden kann, um den gesamten Text der m-Datei als 1xn-Zeichenfolgenarray (nicht in Zeilen unterteilt) zu erhalten. Ich möchte jedoch nur die erste Zeile.

activeEditor = matlab.desktop.editor.getActive ;    
activeEditor.Text ;

Irgendwelche Vorschläge?

4voto

Amro Punkte 122495

Sie können nach dem ersten "Zeilenumbruch"-Zeichen suchen und alles von Anfang bis zu dieser Position zurückgeben:

activeEditor = matlab.desktop.editor.getActive;
pos = find(activeEditor.Text==char(10), 1, 'first');
firstLineStr = activeEditor.Text(1:pos-1)

2voto

b3. Punkte 7019

Ein Weg, dies zu tun, besteht darin, den gesamten Text in der ersten Zeile auszuwählen und dann auf die SelectedText-Eigenschaft zuzugreifen:

\>> activeEditor = matlab.desktop.editor.getActive ;
>> activeEditor.Selection = \[1 1 1 Inf\];
>> activeEditor.SelectedText

ans =

Dies ist die erste Zeile dieser Datei

Man könnte dies verbessern, indem man die aktuelle Auswahl vor dem Auswählen der gesamten ersten Zeile speichert und dann die Auswahl nach dem Zugriff auf den ausgewählten Text wiederherstellt. Auf diese Weise geht die Cursorposition nicht verloren.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X