필터 지우기
필터 지우기

extracting specific part from txt file

조회 수: 2 (최근 30일)
sermet
sermet 2015년 9월 3일
편집: Cedric 2015년 9월 3일
I need to create column from attached txt file as follows;
a=[87.5;85;82.5;80]; %for each LAT/LON1/LON2/DLON/H
%The txt file's column number is variable.

채택된 답변

Cedric
Cedric 2015년 9월 3일
편집: Cedric 2015년 9월 3일
It is difficult to understand what "for each .." means in your question. If you just need to extract the numbers that you specified, the following is one possible approach:
content = fileread( 'trial.txt' ) ;
matches = regexp( content, '[-\d\.]+(?=-\d)', 'match' ) ;
data = str2double( matches ) ;
which outputs
>> data
data =
87.5000 85.0000 82.5000 80.0000
It may not be the most efficient in term of speed, but it is very concise.. could even be a one liner:
data = str2double( regexp( fileread('trial.txt'), '[-\d\.]+(?=-\d)', 'match' )) ;

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 String Parsing에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by