在我的論文中,我需要添加首字母縮略詞列表。我想知道如何編程。我找到了很好的工具pdfgrep,它也得到了正則表達式。我用它以這樣一種方式:如何在pdf文件中查找首字母縮略詞
pdfgrep "([A-Z]+)" thesis.pdf
這是最好的正則表達式我已經找到了這個目的,但它也得到單大寫字母。有沒有人有更好的解決方案? 我寫了一個Python代碼與輸出涉及:
import subprocess
import shlex
import re
FOLDER = 'full folder'
THESIS = '%s/thesis.pdf'%(FOLDER)
OUTPUT_FILE = '%s/acronymsInMyThesis.txt'%(FOLDER)
PATTERN = '([A-Z]+)'
def searchAcronymsInPDF():
output = pdfSearch()
acrs = []
for reg in re.findall(PATTERN, output):
reg.strip()
if (len(reg)>1):
acrs.append(reg)
return set(acrs)
def pdfSearch():
command = 'pdfgrep "%s" %s'%(PATTERN,THESIS)
output = shellCall(command)
return output
def shellCall(command):
p = subprocess.Popen(shlex.split(command), stdout=subprocess.PIPE)
out, _ = p.communicate()
return out
if __name__ == '__main__':
acrs = searchAcronymsInPDF()
print(acrs)
'[A-Z] [A-Z] +'?或'[A-Z] {2,}'?什麼是你的縮寫? 「S.H.I.E.L.D.」嗎?是'ToC'嗎? –
這是一個很好的問題。我決定這將是至少2個大寫字母的序列。但是,正如你所說,它不會抓住ToC。 –