박사 과정에서 개인적으로 사용하기위한 '용어집'인 대용량 일반 텍스트 파일이 여러 개 있습니다. 다음과 같이 쓸모없는 형식입니다.
%%% <entry i>
Blah Blah Blah, see also > <entry j>
%%% <entry i+1>
등 (상호 참조에 유의하십시오.)
현재 상태에서는 이러한 파일을 쉽게 사용할 수 없습니다 (예 : LaTeX로 디스플레이 버전을 만들거나 웹 사이트에 항목의 하위 집합을 넣는 데 사용). 기본적 으로 텍스트 편집기 에서만 찾아 볼 수 있습니다 . 모든 것을 XML로 변환하는 것이 유연성과 유용성을 높이는 가장 좋은 방법 인 것 같습니다. 그렇다면이를 수행하는 가장 좋은 방법은 무엇일까요?
이것은 파이썬에서 그러한 변환기의 기초가 될 수 있습니다.
#!/usr/bin/python
import fileinput
import re
entryre = re.compile( "^%%% <([^>]+)>")
seealsore = re.compile( "see also > <([^>]+)>")
def pnode(nodename, nodeblock):
print "<" + nodename + ">"
print nodeblock
print "</" + nodename + ">"
block = ""
entry = ""
for line in fileinput.input():
match = re.match( entryre, line)
if match:
if entry:
pnode(entry, block)
block = ""
entry = ""
entry = match.group(1)
else:
match = re.match( seealsore, line)
line = re.sub( seealsore, r'<seealso>\1</seealso>', line)
block += line
pnode(entry, block)
모든 파일 (stdin 권장)을 읽고 stdout을 씁니다. xml head와 tail 사이에 출력을 감 쌉니다. 항목에 공백이 포함 된 경우주의해야합니다. 또한 블록에 태그와 유사한 ( "") 하위 문자열이 포함되어 있으면 추가 변환이 필요합니다.
그러나 항목을 찾아보고 싶다면 간단한 html을 사용하는 것이 좋습니다. 정의 목록이나 표는 모두 당신을 잘 제공 할 것입니다. 변환 코드는 약간만 변경하면됩니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다