파이썬을 사용하여 파일에서 큰 텍스트 블록을 제거하려고합니다. 텍스트의 각 블록은 두 번째 따옴표로 끝나는 = "SOMETEXT"파이썬으로 텍스트 블록 제거하기
/번역을 시작합니다.
아무에게도이 작업을 수행하는 방법에 대한 조언을 줄 수 있습니까?
성능이 문제가되지 않는 경우가파이썬을 사용하여 파일에서 큰 텍스트 블록을 제거하려고합니다. 텍스트의 각 블록은 두 번째 따옴표로 끝나는 = "SOMETEXT"파이썬으로 텍스트 블록 제거하기
/번역을 시작합니다.
아무에게도이 작업을 수행하는 방법에 대한 조언을 줄 수 있습니까?
성능이 문제가되지 않는 경우가,이 같은 일을 할 수있는 감사드립니다. 정규 표현식이 더 빠를 수도 있지만 더 간단합니다.
def remtxt(s,startstr,endstr):
while startstr in s:
startpos=s.index(startstr)
try:
endpos=s.index(endstr,startpos+len(startstr))+len(endstr)
except:
return
s=s[:startpos]+s[endpos:]
return s
new_string=remtxt(my_string,'/translation="','"')
이 같은의 re.sub 사용할 수 있습니다
import re
re.sub("/translation=\".*?\" ", "", s)
정규 표현식을 사용합니다. 나는 그것들에 그다지 중점을 두지 않지만 올바른 방향으로의 힌트 일뿐입니다. –
re 모듈을 사용해보십시오. 테스트를 쉽게 해주는 정규식 테스터를 사용하십시오 (http://ksamuel.pythonanywhere.com/). –