2017-03-04 1 views
1

하지 \ : 만 취급 할 RI로 가져올 때readlines 메쏘드 연구 n이 같은 웹 채팅 로그의 번호가 N

Agent: Click here. \n Then click here. \n Then do this. \r\n 

Customer: Show me. \r\n 

Agent: Ok. \n One Second. \r\n 

을 \ 연구 \ n은 새로운 라인으로, not \ n. readline()에서 그렇게 할 수있는 옵션이 보이지 않습니까? 이 작업을 수행하는 가장 좋은 방법이 있습니까? 여기

는 파이썬에서 스택 오버플 솔루션입니다 : How to split only on carriage returns with readlines in python?

답변

4

내가 하나가이 작업을 수행 할 readLines()를 사용할 수 있는지 여부에 보였다,하지만 난 readLines()와 함께 할 수있는 쉬운 방법을 보지 않았다.

기본 기능 readline()은 여기서는 유용하지 않은 것으로 보입니다.

해결 방법은 스캔을 사용하여 텍스트를 읽은 다음 결과를 구문 분석하는 것입니다. 당신의 텍스트에 foo.txt에있는 경우

는 예를 들어, :

words <- scan("foo.txt", what = "character") 
words2 <- words[words != "\\n"] 
onepar <- paste(words2, collapse = " ") 
library(stringr) 
lines <- str_split(onepar, pattern = fixed(" \\r\\n"), simplify = TRUE) 
lines 

    [,1]            [,2]      [,3]      [,4] 
[1,] "Agent: Click here. Then click here. Then do this." " Customer: Show me." " Agent: Ok. One Second." "" 

내가 당신이 원하는 것을 생각하면 다음과 비슷한 무언가를 얻을 수있는 공백을 제거 할 수 있습니다.

나는 더 우아한 해결책을 원합니다.

+1

'scan' 대신'readr :: read_file'을 사용하면 조금 더 간단 해집니다. – Scarabee