2014-02-12 1 views
0

내가 텍스트 파일에서 키워드를 검색 한 후 해당 단어 다음에 오는 것을 읽 MATLAB에서 프로그램을 작성해야 다음 searching.i이 textscan 또는 fscanf 사용하려고 계속하지만 난 뭔가를어떻게 matlab을 사용하여 특정 단어의 텍스트 파일을 검색 할 수 있습니까?

누락해야 텍스트 파일이 있는데 내용은 다음과 같습니다.

Maria, female,24,married 
     born in USA 

George, male,32,married 
     born in Germany  

George 이름 앞에 빈 줄이 있습니다. 예를 들어 마리아를 읽고 빈 마침표까지 마리아라는 단어를 읽으 려합니다.

+1

을 제공 Maria

fid = fopen('textfile.txt','r') C = textscan(fid, '%s','Delimiter',''); fclose(fid) C = C{:}; Lia = ~cellfun(@isempty, strfind(C,'Maria')); output = [C{find(Lia)} ',' C{find(Lia)+1}] 

을 찾고, 예를 들어,하지만 matlab에 거의 텍스트 처리에 적합한 도구입니다. 첫 번째 펄 (나는 그렇게 익숙해 져 있기 때문에)을 추천하지만, 많은 사람들이 그것을 좋아하지 않으므로, 파이썬도 Matlab보다 좋은 선택 일 것이라고 말할 것이다. – carandraug

+0

질문은 나를 위해 명확하지 않다 ... 당신은 무엇을 기대하고 있나? 검색 또는 독서 속도를 향상시키는 다른 방법을 기대하십니까? 아니면 texscan의 출력을 파싱하는 방법을 기대합니까? – phyrox

+0

또한, _i가 fscanf 또는 textscan을 사용하려했지만 뭔가가 누락되어 있어야한다고 말하면 [참조하십시오] (http://www.phabricator.com/docs/phabricator/article/Please_Please_Please.html) 그렇지 않으면 우리는 ' 너를 도우 라. – carandraug

답변

4

textscan을 사용하여 전체 파일을 읽고, 키워드를 검색하고, 발견 된 행을 추출한 다음이 행을 다음 행과 연결시킬 수 있습니다. 여기

은 아마이 듣고 싶지 않아

Maria, female,24,married,born in USA 
관련 문제