WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

txt File Zeile für Zeile einlesen, aber nur bis zum Ersten

 

anirac01
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 80
Anmeldedatum: 26.08.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2016, 13:54     Titel: txt File Zeile für Zeile einlesen, aber nur bis zum Ersten
  Antworten mit Zitat      
Hallo an alle,

ich habe eine Txt Datei mit 580 Zeilen,
eine Zeile sieht entweder so:
"MOD_xxxx.c", line 301: warning (dcc:1643): narrowing or signed-to-unsigned type conversion found: int to unsigned char

oder so:
Creating depend-file for MOD_xxxx.c

aus.
Nun möchte ich Zeile für Zeile einlesen, das mache ich mit:
Code:
filename = 'log.txt';
infile = fopen(filename,'rt');
while not(feof(infile))
    line = fgetl(infile);
    [Ta,Tb]=textscan(line,'%s %s','delimiter',':');
end
fclose(infile);


Ich möchte nun zum Einen nur die Zeilen haben, die mit " anfangen, die anderen sollen im neuen txt File nicht mehr auftauchen. Zum Anderen möchte ich gerne im neuen Textfile die Zeile bis zum ersten Doppelpunkt haben (quasi in einer Spalte), in der zweiten das warning mit der Nummer und in der dritten Spalte soll dann der Rest stehen

So sollte es dann aussehen
"MOD_xxxx.c", line 301: warning (dcc:1643): narrowing or signed-to-unsigned type conversion found: int to unsigned char


Ein erster Schritt wäre vllt zuerst mal es zu schaffen bis zum ersten : zu lesen, wenn ich als Delimiter den : angebe ließt er ja jeden Doppelpunkt der Zeile aus


hat jemand eine Idee?
Vielen Dank
Grüß
carina
Private Nachricht senden Benutzer-Profile anzeigen


Seban
Forum-Meister

Forum-Meister


Beiträge: 600
Anmeldedatum: 19.01.12
Wohnort: ---
Version: ab R2014b
     Beitrag Verfasst am: 18.02.2016, 15:11     Titel:
  Antworten mit Zitat      
Hallo Carina,

Schau dir mal die Funktionen regexp und regexprep an.

Hier ein kleines Beispiel, das ich gerade zur Hand habe:

Code:
file    = 'beispiel.txt';
name    = regexprep(file, '(.*)(\.[^.]*)$', '$1');
ext     = regexprep(file, '(.*)(\.[^.]*)$', '$2');


Die Suchkriterien(?) sehen auf den ersten Blick verwirrend aus, mit der Matlab-Doku lässt sich ihr Sinn erkennen.

Grüße,
Seban
_________________

Richtig fragen
Debugging
Private Nachricht senden Benutzer-Profile anzeigen
 
anirac01
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 80
Anmeldedatum: 26.08.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2016, 15:19     Titel:
  Antworten mit Zitat      
danke

ich teste mal =)
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.