How to read all lines in txt file satisfying some condition
    1 visualización (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
Let's assume we have the following format in the file: 1 str1 0 str2 1 str3 ...
that is in each line we have: the first character is number, either 0 or 1, next a whitespace (space or tab) and next a string.
I would like to get all strings that have 1 as first characted in the line. How to do this efficiently (and elegantly, preferably with one-liner). I know I can use fgets and just iterate over the lines.
0 comentarios
Respuestas (1)
  Cedric
      
      
 el 22 de Oct. de 2013
        
      Editada: Cedric
      
      
 el 22 de Oct. de 2013
  
      The following is assuming that you have one pair number/string per line in the file.
 match = regexp( fileread('myFile.txt'), '(?<=1 )[^\r\n]+', 'match' ) ;
but one-liner doesn't mean efficient or elegant. You would have to compare this regexp-based approach to approaches based on FGETL, FSCANF, or TEXTSCAN ..
0 comentarios
Ver también
Categorías
				Más información sobre Characters and Strings en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

