2013-08-06 3 views
1

SED (bash 쉘)를 사용하여 RTF 파일에서 "셀"정보를 추출하는 방법은 무엇입니까? 즉 {}의 쌍 사이에있는 모든 문자열은 RTF 행에 여러 개가있을 수 있습니다. 모든 RTF 코드를 제거하고 테이블 값만 유지하려고합니다.RTF 파일에서 SED를 사용하여 "셀"값을 추출하십시오.

+0

awk는 이런 종류의 것보다 낫습니다. 나는 구분 기호로 작업하는 것이 좋습니다. –

+0

테이블 외부에서 일반 텍스트를 어떻게 처리하고 싶습니까? 테이블 내의 텍스트 만 원한다면 상당히 어려울 것입니다. –

+0

아마도 RTF 파일에있는 것을 보여줘야합니다. 간단한 RTF 파일을 만들었고'{} '표시는 표 셀의 항목 주위에 없습니다. 허락하신다면, 이것은 RTF가 Mac에서 만들어졌고 Windows 컴퓨터에서는 만들어지지 않았습니다. 또한'{} '표시자를 유지 하시겠습니까? –

답변

1

당신이 (GNU가 나오지도)에 대한이 작동 할 수는 :

sed '/{/!d;s/[^{]*{\([^}]*\)}/\1\n/;P;D' file 

그것은 여는 중괄호가없는 모든 줄을 삭제합니다. 그런 다음 첫 번째 여는 중괄호까지 문자를 제거합니다. 그런 다음 닫는 중괄호를 포함하지 않고 별도의 줄에 문자열을 인쇄합니다.

+0

RTF 파일은 Word Table에서 가져온 것입니다. 표 셀 내의 값만 캡처하여 일반 텍스트 파일에 배치하려고합니다. Word 표의 여러 열로 인해 같은 줄에 {}이 (가) 여러 세트있을 수 있습니다. {N = xx}의 모든 경우를 포착하는 것도 유용 할 것입니다. 여기서 xx는 숫자입니다. 당신의 도움을 주셔서 대단히 감사합니다. – user2658151

관련 문제